您的位置:首页 > 运维架构

AJAX ControlToolkit学习日志-DynamicPopulate(11)

2007-03-19 13:43 603 查看
DynamicPopulate控件用于动态的替换一个控件中的内容,它的内容来自一个函数调用或Web调用。

下面来看一个示例:

1)在VS中新建一个ASP.NET AJAX-Enabled Web Project项目工程,命名为DynamicPopulateExtender1。

2)在Default.aspx中添加一个Label,用于动态操作的触发器。然后再添加4个Radio,用于显示不同的调用内容。

代码如下:

1 <asp:Label ID="Label1" runat="server" Font-Bold="True" Text="Time at the server"></asp:Label><br />
2 <br />
3 <label for="Radio1"><input id="Radio1" name="time" type="radio" value="G" onclick="UpdateDataKey(this.value)" />Normal</label><br />
4 <br />
5 <label for="Radio2"><input id="Radio2" name="time" type="radio" value="d" onclick="UpdateDataKey(this.value)" />Short Date</label><br />
6 <br />
7 <label for="Radio3"><input id="Radio3" name="time" type="radio" value="D" onclick="UpdateDataKey(this.value)" />Long Date</label><br />
8 <br />
9 <label for="Radio4"><input id="Radio4" name="time" type="radio" value="U" onclick="UpdateDataKey(this.value)" />UTC Time</label><br />
10 <br />

3)然后在页面上添加Panel控件,用于显示不同的回调产生的内容;同时添加一个DynamicPopulateExtender控件,指定它的一些属性。

代码如下:

1 <asp:Panel ID="TimePanel" runat="server" CssClass="dynamicPopulate_Normal" Height="50px" Width="125px">
2 </asp:Panel>
3  </div>
4 <br />
5 <cc1:dynamicpopulateextender id="DynamicPopulateExtender1" BehaviorID="dp1" UpdatingCssClass="dynamicPopulate_Updating" ServiceMethod="GetHtml" TargetControlID="TimePanel" PopulateTriggerControlID="Label1" runat="server"></cc1:dynamicpopulateextender>

属性说明:
BehaviorID:该扩展控件客户端行为标识。
UpdatingCssClass:该控件对Panel进行更新时采用的Css样式。
ServiceMethod:调用的函数方法。
TargetControlID:将要动态显示不同内容的控件。
PopulateTriggerControlID:进行动态显示内容时指定的触发器。

4)在页面上添加函数GetHtml。代码入下:

1 [System.Web.Services.WebMethod()]
2 [System.Web.Script.Services.ScriptMethod()]
3 public static string GetHtml(string contextKey)
4 <script type="text/javascript">
2 function UpdateDataKey(value)
3 </script>

6)按下CTRL+F5,在浏览器里查看最终效果。



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: