ASP.NET动态增加控件 应用篇(二)
此篇,是 前篇 应用篇(一)的延续,也是进阶版。在本篇中使用一个aspx 档案来同时实现,资料清单的显示以及资料编辑同在一起的示范。
当然,资料字段少的时候,可以直接 使用GridView 就直接实现,但在字段多的时候,或是编辑画面要求复杂时,这时在使用GridView 就感觉很麻烦了。
在本篇中 会使用 几个程式相关档案,分别是,
test5.aspx 主页面
MyBase5.aspx.cs 基底程式
Customer 类,Value Object
test5.xml 用来储存示范资料
详细介绍如下:
在MyBase5 中有各重点就是,一开始控件,要在Init 时就要全部产生出来,当然这是各偷懒的行为,读者 有兴趣,可以 再去尝试判断页面状态,来决定来些要产生 哪些不产生。
在这个程式中还有各要注意的地方,就是sourceTag(编辑页面) 跟GridView1(主页面) 的显示控制,一开始 需先将sourceTag 隐藏,因为本页面,user 无任何操作一进来要看到的页面是GridView1,sourceTag 是进来页面後 视操作的结果来决定是否显示的。
MyBase5.aspx.cs
1 using System;
2 using System.Data;
3 using System.Collections;
4 using System.Web.UI;
5 using System.Web.UI.WebControls;
6 using System.Web.UI.HtmlControls;
7 using System.Text;
8 using System.Configuration;
9
10 public class MyBase5 : System.Web.UI.Page{
11
12 protected GridView GridView1;
13 protected HtmlGenericControl sourceTag;
14 protected Button btnSubmit;
15 www.2cto.com
16 protected override void OnInit(EventArgs e)
17 {
18 base.OnInit(e);
19 HtmlGenericControl msgTag = new HtmlGenericControl();
20 msgTag.ID = "divMsg";
21 sourceTag.Controls.Add(msgTag);
22
23 Button btnSave = new Button();
24 btnSave.Click += new EventHandler(btnSave_Click);
25 btnSave.Text = "储存";
26 sourceTag.Controls.Add(btnSave);
27
28 Button btnMain = new Button();
29 btnMain.Click += new EventHandler(btnMain_Click);
30 btnMain.Text = "回主页面";
31 sourceTag.Controls.Add(btnMain);
32
33 Table myTable = new Table();
34 sourceTag.Controls.Add(myTable);
35 dealTableData(myTable);
36 sourceTag.Visible = false;
37
38 GridView1.RowEditing += new GridViewEditEventHandler(GridView1_RowEditing);
39 }
40 protected override void OnLoad(EventArgs e)
41 {
42 base.OnLoad(e);
43
44 if (!IsPostBack)
45 {
46 &nb
- 发表评论
-
- 最新评论 更多>>