如何动态创建用户控件的实例? WebUserControlMyControl test=new WebUserControlMyControl(); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 但是这样无法通过编译:Cannot Create an instance of the abstract class or interface try:((WebUserControlMyControl )e.Item.Cells[1].Controls[0]).Clear(); 需要使用 DataGrid 的接口才行 ///自定义datagriditem放在databind之前TemplateColumn genericcolumn = new TemplateColumn();genericcolumn.HeaderText ="字段1";genericcolumn.HeaderStyle.Wrap=false;genericcolumn.ItemTemplate = new GenericItem("col1");if (!Readonly){ genericcolumn.EditItemTemplate = new ValidateEditItem("col1");}/// public class GenericItem : ITemplate { private column string; public GenericItem(string column) { this.column = column; } public void InstantiateIn(Control container) { Literal l = new Literal(); l.ID=this.column l.DataBinding += new EventHandler(this.lcBindData); container.Controls.Add(l); } public void lcBindData(object sender, EventArgs e) { Literal l = (Literal) sender; DataGridItem container = (DataGridItem) l.NamingContainer; string colText=((DataRowView) container.DataItem)[column].ToString(); if ((column.fieldusertype=="5")||(column.fieldusertype=="6")) l.Text = colText; } }/// public class ValidateEditItem : ITemplate { private string column; public ValidateEditItem(string column) { this.column = column; } public void InstantiateIn(Control container) { TextBox tb = new TextBox(); tb.DataBinding += new EventHandler(this.BindData); tb.ID = this.column; tb.Width=Unit.Parse("100%"); container.Controls.Add(tb); } public void BindData(object sender, EventArgs e) { TextBox tb = (TextBox) sender; DataGridItem container = (DataGridItem)tb.NamingContainer; tb.Text = ((DataRowView) container.DataItem)[column].ToString(); } } 根本就是定义DataGrid的编辑模板 请教 fengy2k:这一段应该放在哪里?能否说得具体一点?谢谢 对不起,刚才漏了,是这一段:///自定义datagriditem放在databind之前TemplateColumn genericcolumn = new TemplateColumn();genericcolumn.HeaderText ="字段1";genericcolumn.HeaderStyle.Wrap=false;genericcolumn.ItemTemplate = new GenericItem("col1");if (!Readonly){ genericcolumn.EditItemTemplate = new ValidateEditItem("col1");}/// C#的String.Split()方法是什么意思 请教Socket通讯的问题 大家帮忙看看这段代码 数据库写入不成功,请大家帮忙看看 关于日前比较的这个SQL语句怎么写? C#继承UserControl 的控件上添加PictureBox 隐藏PictureBox问题 怎么直接传递控件的拥有者信息到函数内部? e.state啥意思 一个简单的问题!button的 求大神帮忙做个秒表计时器 在打包时,把exe文件打包进去.如何使客户端安装时不显示安装这些exe文件的界面 C#技术开发的一个问题,希望大家踊跃给出想法,谢谢
Cannot Create an instance of the abstract class or interface
((WebUserControlMyControl )e.Item.Cells[1].Controls[0]).Clear();
TemplateColumn genericcolumn = new TemplateColumn();
genericcolumn.HeaderText ="字段1";
genericcolumn.HeaderStyle.Wrap=false;
genericcolumn.ItemTemplate = new GenericItem("col1");
if (!Readonly)
{
genericcolumn.EditItemTemplate = new ValidateEditItem("col1");
}
///
public class GenericItem : ITemplate
{
private column string;
public GenericItem(string column)
{
this.column = column;
}
public void InstantiateIn(Control container)
{
Literal l = new Literal();
l.ID=this.column
l.DataBinding += new EventHandler(this.lcBindData);
container.Controls.Add(l); } public void lcBindData(object sender, EventArgs e)
{
Literal l = (Literal) sender;
DataGridItem container = (DataGridItem) l.NamingContainer;
string colText=((DataRowView) container.DataItem)[column].ToString();
if ((column.fieldusertype=="5")||(column.fieldusertype=="6"))
l.Text = colText;
}
}
/// public class ValidateEditItem : ITemplate
{
private string column;
public ValidateEditItem(string column)
{
this.column = column;
} public void InstantiateIn(Control container)
{
TextBox tb = new TextBox();
tb.DataBinding += new EventHandler(this.BindData);
tb.ID = this.column;
tb.Width=Unit.Parse("100%");
container.Controls.Add(tb);
} public void BindData(object sender, EventArgs e)
{
TextBox tb = (TextBox) sender;
DataGridItem container = (DataGridItem)tb.NamingContainer;
tb.Text = ((DataRowView) container.DataItem)[column].ToString();
}
}
这一段应该放在哪里?能否说得具体一点?
谢谢
///自定义datagriditem放在databind之前
TemplateColumn genericcolumn = new TemplateColumn();
genericcolumn.HeaderText ="字段1";
genericcolumn.HeaderStyle.Wrap=false;
genericcolumn.ItemTemplate = new GenericItem("col1");
if (!Readonly)
{
genericcolumn.EditItemTemplate = new ValidateEditItem("col1");
}
///