原来模版项,是新的一个实现ITemplate接口的类。这个接口的InstantiateIn方法就是控制添加哪些控件的。
在这个类定义完了后,把它的实例赋值给模版列的ItemTemplate属性。
1
private
class
EditTemplate : ITemplate
2 {
3
4 #region ITemplate Members
5
6 public void InstantiateIn(Control container)
7 {
8 Button btnEdit = new Button();
9 btnEdit.CommandName = " EditUserInfo " ;
10 btnEdit.ID = " btnEdit " ;
11 btnEdit.Text = " 编辑 " ;
12 container.Controls.Add(btnEdit);
13 }
14
15 #endregion
16 }
2 {
3
4 #region ITemplate Members
5
6 public void InstantiateIn(Control container)
7 {
8 Button btnEdit = new Button();
9 btnEdit.CommandName = " EditUserInfo " ;
10 btnEdit.ID = " btnEdit " ;
11 btnEdit.Text = " 编辑 " ;
12 container.Controls.Add(btnEdit);
13 }
14
15 #endregion
16 }
仔细思考下,这种处理模板方法妙,我们可以在模板类中进行复杂的控制和操作,然后透过一个接口方法把控件放到容器里面。
本文介绍了一个使用.NET框架中DataGrid动态添加模板列的例子。通过创建一个实现了ITemplate接口的类并覆写InstantiateIn方法,可以自定义模板列中的控件。此方法允许开发者灵活地在模板中添加如按钮等复杂控件。
2654

被折叠的 条评论
为什么被折叠?



