日期:2014-05-19  浏览次数:20494 次

我想在page_load里面动态创建datagrid的模板列,但是不知道container.dataitem怎么写?
AlertEntity   alert   =   new   AlertEntity();
alert.applicant   =   new   ApplicantEntity();
Label   l   =   new   Label();
object   o   =   DataBinder.Eval(alert,column.ColumnBindName);
l.Text   =   Convert.ToString(DataBinder.Eval(alert,column.ColumnBindName));  
Control   container   =   new   Control();
bocolumn.HeaderText   =   column.ColumnTextName;
bocolumn.ItemTemplate   =   new   ColumnTemplate2(l);
bocolumn.ItemTemplate.InstantiateIn(container);


public   class   ColumnTemplate2   :   ITemplate  
{  
private   Label   l;
public   ColumnTemplate2(Label   l2)
{
l   =   l2;
}

public   void   InstantiateIn(Control   container)              
{  

container.Controls.Add(l);
}  
}    

container.dataitem我是用一个实体来替代的不知道可不可以?同时,这个实体还聚合了其它的实体,绑定信息还包括被聚合实体的属性
谢谢!

------解决方案--------------------
container.dataitem表示被绑定的数据源吧
能这么改吗?
bocolumn.ItemTemplate = new ColumnTemplate2(l);
bocolumn.ItemTemplate.InstantiateIn(container);
==============可以这样用??
------解决方案--------------------
这个问题确实有点稀奇,帮顶下
------解决方案--------------------
真的没有这个必要...