找回密码
 立即注册

QQ登录

只需一步,快速开始

vbagcl

初级会员

24

主题

100

帖子

210

积分

初级会员

积分
210

活字格认证微信认证勋章

vbagcl
初级会员   /  发表于:2011-12-30 23:20  /   查看:9753  /  回复:6
如何动态生成c1gridview,并根据实际需要将各列定义成选择框,文本框,日期,下拉列表,数字等,然后将各列指向datatable的对应列,显示数据,并能修改,删除,增加等。
多谢指点!

6 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2011-12-31 13:54:00
沙发

回复 1# vbagcl 的帖子

你可以通过代码来添加相应的列信息,通过代码设置相应的属性:
  1. C1TemplateField col = new C1TemplateField();
  2. //设置需要的属性            
  3. // ... ...
  4. // ... ...
  5. grid.Columns.Add(col);
复制代码
回复 使用道具 举报
vbagcl
初级会员   /  发表于:2011-12-31 15:03:00
板凳
C1.Web.UI.Controls.C1GridView.C1TemplateField CT = new C1TemplateField();
                CT.HeaderText = dr_fld.Rows[j]["FIELD_NAME_CH"].ToString();                C1.Web.UI.Controls.C1GridView.C1GridViewUpdateBinding UP = new C1GridViewUpdateBinding();
                UP.UpdateField = dr_fld.Rows[j]["ALIAS_NAME"].ToString();
                CT.UpdateBindings.Add(UP);
                System.Web.UI.WebControls.TextBox T = new System.Web.UI.WebControls.TextBox();
                        T.Text = "<%# Bind('" + dr_fld.Rows[j]["ALIAS_NAME"].ToString() + "') %>";                        
                        CT.EditItemTemplate.InstantiateIn(T);
绑定C1GridViewUpdateBinding时没有出错,但 CT.EditItemTemplate.InstantiateIn(T);
却报错:对象没有初始化。
不知道如何解决,另外绑定C1GridViewUpdateBinding虽然没出错,但不能完整调试,也不知道是否正确。
回复 使用道具 举报
vbagcl
初级会员   /  发表于:2011-12-31 15:03:00
地板
多谢指点!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-1-3 11:49:00
5#

回复 4# vbagcl 的帖子

CT.EditItemTemplate是需要先赋值的,你可以创建一个.ascx控件,然后通过以下代码加载.ascx作为EditItemTemplate使用的模板:
  1. CT.EditItemTemplate = Page.LoadTemplate(&quot;~/Template/MyEditTemplate.ascx&quot;);
复制代码
回复 使用道具 举报
vbagcl
初级会员   /  发表于:2012-1-10 15:41:00
6#
多谢!搞定啦!
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-1-10 17:21:00
7#
哈哈,不客气,也谢谢你将最终结果告诉我们!:share:
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部