二、 使用编程来实现UpdatePanel
在ScriptManager使用介绍中,我们对UpdatePanel中有个基本使用方法的示例。在这里我们主要来讲一下,怎么在编程下实现前面的例子。有印象的读者,应该知道在哪个示例中只是存在一个UpdatePanel,在UpdatePanel中有两个控件:Label1和DropDownList1。在触发SelectIndexChange时,异步更新Label1的Text属性。
protected void Page_Load(object sender, EventArgs e)
...{
//添加ScriptManager控件
ScriptManager ScriptMan = new ScriptManager();
ScriptMan.ID = "ScriptManager1";
![]()
//添加UpdatePanel控件
UpdatePanel up1 = new UpdatePanel();
up1.ID = "UpdatePanel1";
//设置更新模式
up1.UpdateMode = UpdatePanelUpdateMode.Conditional;
![]()
//添加DropDownList控件
DropDownList Ddl = new DropDownList();
![]()
Ddl.ID = "DropDownList1";
Ddl.AutoPostBack = true;
![]()
Ddl.Items.Add("Hello World");
Ddl.Items.Add("Hello Ajax");
![]()
Ddl.SelectedIndexChanged += new EventHandler(Ddl_SelectedIndexChanged);
![]()
//添加Label控件
Label label1 = new Label();
![]()
label1.ID = "Label1";
label1.Text = "Label1";
![]()
//将控件加入UpdatePanel中
up1.ContentTemplateContainer.Controls.Add(Ddl);
up1.ContentTemplateContainer.Controls.Add(label1);
![]()
Page.Form.Controls.Add(ScriptMan);
Page.Form.Controls.Add(up1);
![]()
}
![]()
void Ddl_SelectedIndexChanged(object sender, EventArgs e)
...{
((Label)this.Page.FindControl("Label1")).Text = ((DropDownList)this.Page.FindControl("DropDownList1")).SelectedValue;
}
