FineUI 官方论坛
标题:
关于Grid动态添加TemplateField以及其中ASP.net控件的问题
[打印本页]
作者:
大鸟打小鸟
时间:
2012-6-26 09:32
标题:
关于Grid动态添加TemplateField以及其中ASP.net控件的问题
就是想根据条件,动态添加TemplateField并在其中加入asp。net控件Textbox,自己写的代码如下:
var templateField = new TemplateField();
templateField.HeaderText = "部门";
templateField.Width = 150;
var textbox = new System.Web.UI.WebControls.TextBox();
textbox.ID = "txt1";
textbox.Width = 130;
textbox.Text = "<%# Eval('部门') %>";
templateField.ItemTemplate.InstantiateIn(textbox);
grid1.Columns.Add(templateField);
复制代码
但是编译的时候一直在“ templateField.ItemTemplate.InstantiateIn(textbox);
”处报“未将对象引用设置到对象的实例”,是我用的方法不对嘛?因为事例当中,只有动态添加BoundField,所以还要请三石大人请教!谢谢
作者:
sanshi
时间:
2012-6-27 14:57
动态添加模板列就不是这么简单了,可以参考别人的文章:
http://www.mindfiresolutions.com ... dynamically-841.php
http://aspalliance.com/1125_Dyna ... _Insert_Options.all
http://www.codeproject.com/Artic ... dynamically-in-a-gr
作者:
sanshi
时间:
2012-6-27 14:58
我增加了一个示例,已经Check in:
79624
关键代码:
public class GenderTemplate : ITemplate
{
public void InstantiateIn(System.Web.UI.Control container)
{
AspNet.Label labGender = new AspNet.Label();
labGender.DataBinding += new EventHandler(labGender_DataBinding);
container.Controls.Add(labGender);
}
private void labGender_DataBinding(object sender, EventArgs e)
{
AspNet.Label labGender = (AspNet.Label)sender;
IDataItemContainer dataItemContainer = (IDataItemContainer)labGender.NamingContainer;
int gender = Convert.ToInt32(((DataRowView)dataItemContainer.DataItem)["Gender"]);
labGender.Text = (gender == 1) ? "男" : "女";
}
}
ExtAspNet.TemplateField tf = new TemplateField();
tf.Width = Unit.Pixel(100);
tf.HeaderText = "性别(模板列)";
tf.ItemTemplate = new GenderTemplate();
Grid1.Columns.Add(tf);
复制代码
作者:
大鸟打小鸟
时间:
2012-6-27 15:04
sanshi 发表于 2012-6-27 14:58
我增加了一个示例,已经Check in:79624
关键代码:
非常感谢啊,永远支持ExtAspNet!
作者:
四维空间
时间:
2012-8-13 17:06
存在一个问题啊,我怎么获取呢?
作者:
(^o^)
时间:
2012-8-24 03:41
本帖最后由 (^o^) 于 2012-8-24 03:46 编辑
linkButton, onclinetClick事件怎么绑定,主要问题是我采用直接绑定DataTable的方式,那个WINDOW控件就没有JS脚本可以调用的接口吗?
作者:
£快乐→无罪
时间:
2012-10-9 09:29
如何获取该列值,急!!!
作者:
sanshi
时间:
2012-10-9 13:34
类似这样:
GridRow row = Grid1.Rows[i];
System.Web.UI.WebControls.TextBox tbxGroupName = (System.Web.UI.WebControls.TextBox)row.FindControl("tbxGroupName");
复制代码
http://demo.extasp.net/#/grid/grid_edit.aspx
欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/)
Powered by Discuz! X3.4