2Page对象的常用方法和事件 Pge对象的常用方法见表42。 表4-2Page对象的常用方法 方法名 说明 DataBind 将数据源绑定到被调用的服务器控件及所有子控件 Findcontrol(id) 在页面上搜素标识符为id的服务器控件,返回值为找到的控件,若控件不存在则返回Nul 将 content指定的字符串解释成Web页面或用户控件的构成控件,该方法的返回值为生成的 Parse Control(content) 控件 RegisterClien Scrip Block向页面发出客户端脚本块 方法 Validate方 指示页面中所有验证控件进行验证 Pge对象的常用事件见表43 表4-3Page对象的常用事件 事件名 说明 Init事件 当服务器控件初始化时发生,这是控件生存期的第一步 Load事件 当服务器控件加载到Page对象上触发的事件 Unload事件 当服务器控件从内存中卸载时发生
◼ 2. Page对象的常用方法和事件 ◼ Page对象的常用方法见表4-2。 ◼ Page对象的常用事件见表4-3
412web页面的生命周期 Web页面的生命周期及各阶段执行的内容如下。 ①初始化 ■②加载视图状态 ③处理回发数据 ④加载 ⑤预呈现 ■⑥保存状态 ■⑦呈现 ■⑧处置 ■⑨卸载
◼ 4.1.2 Web页面的生命周期 ◼ Web页面的生命周期及各阶段执行的内容如下。 ◼ ① 初始化 ◼ ② 加载视图状态 ◼ ③ 处理回发数据 ◼ ④ 加载 ◼ ⑤ 预呈现 ◼ ⑥ 保存状态 ◼ ⑦ 呈现 ◼ ⑧ 处置 ◼ ⑨ 卸载
413Page对象的Load事件与nit事件比较 【演练42】设计一个 ASPNET网站,向Web窗体中添加 两个列表框控件 ListBox1和 Listbox2,添加一个按钮控件 Button1。在Page对象的Ioad事件和Init事件中分别向 Listbox1和 Listbox2中填充若干数字作为选项。按钮控件无 须编写任何代码,只是要在用户单击按钮时引起一个服务 器端回发。 切换到代码编辑窗口,编写 Page load和 Page_ Init事件代码 如下:
◼ 4.1.3 Page对象的Load事件与Init事件比较 ◼ 【演练4-2】 设计一个ASP.NET网站,向Web窗体中添加 两个列表框控件ListBox1和ListBox2,添加一个按钮控件 Button1。在Page对象的Load事件和Init事件中分别向 ListBox1和ListBox2中填充若干数字作为选项。按钮控件无 须编写任何代码,只是要在用户单击按钮时引起一个服务 器端回发。 ◼ 切换到代码编辑窗口,编写Page_Load和Page_Init事件代码 如下:
protected void Page_ Init(object sender, EventArgs e) for(int 1=1; 1<4; 1++) stBox1. Items. Add(iToString) protected void Page_ Load(object sender, EventArgs e) for(nti=1;<4;1++) istBox2. Items. Add (iToString 0)
◼ protected void Page_Init(object sender, EventArgs e) ◼ { ◼ for (int i = 1; i < 4; i++) ◼ { ◼ ListBox1.Items.Add(i.ToString()); ◼ } ◼ } ◼ protected void Page_Load(object sender, EventArgs e) ◼ { ◼ for(int i=1;i<4;i++) ◼ { ◼ ListBox2.Items .Add (i.ToString()); ◼ } ◼ }
运行程序页面初次加载后,如图4-3所示, Listbox1和 Listbox2两个列表框中填充的数据完全相同。但是,单击 按钮引起回发后可以看到,在 Page_load事件中填充的 Listbox2控件的选项出现了重复,如图44所示 Page对象的hni事件与Load事件的比较 Page对象的In事件与Load事件的比较 在lni事件中填充在Load事件中填充 在Init事件中填充在Load事件中填充 引起回发 「引起回发 图4-3页面初次加载时的状况 图4-4页面回发后的状况
◼ 运行程序页面初次加载后,如图4-3所示,ListBox1和 ListBox2两个列表框中填充的数据完全相同。但是,单击 按钮引起回发后可以看到,在Page_Load事件中填充的 ListBox2控件的选项出现了重复,如图4-4所示