GridView中,自动创建模板列后,如何为该模板列中的控件绑定数据?
public class GridViewTemplate : ITemplate
{
private DataControlRowType templateType;
private string columnName;
private string count; public GridViewTemplate(DataControlRowType type, string colname,string count11)
{
templateType = type;
columnName = colname;
count = count11;
}
//模板列
public void InstantiateIn(System.Web.UI.Control container)
{
switch (templateType)
{
case DataControlRowType.Header:
Literal lc = new Literal();
lc.Text = columnName;
container.Controls.Add(lc);
break;
case DataControlRowType.DataRow:
Label Lb_Id = new Label();
Lb_Id.Text = ????
container.Controls.Add(Lb_Id);
break; default:
break;
}
}
}上面是自动创建模板列的类,下面是调用:
TemplateField customField1 = new TemplateField();
customField1.ShowHeader = true;
customField1.HeaderTemplate = new GridViewTemplate(DataControlRowType.Header, "2222"); customField1.ItemTemplate = new GridViewTemplate(DataControlRowType.DataRow, "");
GridView1.Columns.Add(customField1);
我想要的是在模板列中的label控件中绑定数据表的主键值,以前在前台可以直接<%#DataBinder.Eval(Container.DataItem,"Id")%>但现在不知道怎么绑定了
public class GridViewTemplate : ITemplate
{
private DataControlRowType templateType;
private string columnName;
private string count; public GridViewTemplate(DataControlRowType type, string colname,string count11)
{
templateType = type;
columnName = colname;
count = count11;
}
//模板列
public void InstantiateIn(System.Web.UI.Control container)
{
switch (templateType)
{
case DataControlRowType.Header:
Literal lc = new Literal();
lc.Text = columnName;
container.Controls.Add(lc);
break;
case DataControlRowType.DataRow:
Label Lb_Id = new Label();
Lb_Id.Text = ????
container.Controls.Add(Lb_Id);
break; default:
break;
}
}
}上面是自动创建模板列的类,下面是调用:
TemplateField customField1 = new TemplateField();
customField1.ShowHeader = true;
customField1.HeaderTemplate = new GridViewTemplate(DataControlRowType.Header, "2222"); customField1.ItemTemplate = new GridViewTemplate(DataControlRowType.DataRow, "");
GridView1.Columns.Add(customField1);
我想要的是在模板列中的label控件中绑定数据表的主键值,以前在前台可以直接<%#DataBinder.Eval(Container.DataItem,"Id")%>但现在不知道怎么绑定了
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货