GridControl详解(九)表格中的控件



选择完成控件后,可用+号点开ColumnEdit列,改控件的类型是RepositoryItem类型的,其相应的属性和相应的控件属性是类似的



构建数据如下:

[csharp]  view plain copy
  1. <span style="white-space: pre;">    </span>    DataTable dt = new DataTable();  
  2.             dt.Columns.Add("名称");  
  3.             dt.Columns.Add("范围");  
  4.             dt.Columns.Add("小区总数");  
  5.             dt.Columns.Add("类型");  
  6.             dt.Columns.Add("子类型");  
  7.             dt.Columns.Add("子片区数量");  
  8.             dt.Columns.Add("责任人");  
  9.             dt.Columns.Add("编号");  
  10.             dt.Columns.Add("选择");  
  11.   
  12.             dt.Rows.Add(new object[] { "片区1""范围""5""线""普通公路""5""qiangfei""1""0" });  
  13.             dt.Rows.Add(new object[] { "片区2""范围""5""线""普通公路""5""qiangfei""2""0" });  
  14.             dt.Rows.Add(new object[] { "片区3""范围""5""线""普通公路""5""qiangfei""3""1" });  
  15.             dt.Rows.Add(new object[] { "片区4""范围""5""线""普通公路""5""qiangfei""4""1" });  
  16.             dt.Rows.Add(new object[] { "片区5""范围""5""线""普通公路""5""qiangfei""5""0" });  
  17.             dt.Rows.Add(new object[] { "片区6""范围""5""线""普通公路""5""qiangfei""6""1" });  
  18.             dt.Rows.Add(new object[] { "片区7""范围""5""线""普通公路""5""qiangfei""7""1" });  
  19.             dt.Rows.Add(new object[] { "片区8""范围""5""线""普通公路""5""qiangfei""8""0" });  
  20.             dt.Rows.Add(new object[] { "片区9""范围""5""线""普通公路""5""qiangfei""9""0" });  
  21.             dt.Rows.Add(new object[] { "片区10""范围""5""线""普通公路""5""qiangfei""10""1" });  
  22.             dt.Rows.Add(new object[] { "片区11""范围""5""线""普通公路""5""qiangfei""11""1" });  
  23.             dt.Rows.Add(new object[] { "片区12""范围""5""线""普通公路""5""qiangfei""12""0" });  
  24.   
  25.             gridControl1.DataSource = dt;  
注意:我们表格中【选择】一列的值是字符串型,那么表格中设置的类型也必须是字符串型。类型必须统一。


结果呈现:


必要设置:【编辑】属性

我们如果添加了选择框列,肯定要对选择列可用进行点击选中的操作,所以我们必须先打开表格的可编辑状态。


但是这样每一列都可以编辑,所以要关闭其他列的可编辑状态。


这样我们就可以操作选择列,而其他列不可编辑。

由此我们可以看出gridview上的Editable属性控制大于列的AllowEdit属性。


进阶:

当我们点击某一行的选择列checkbox控件是,其绑定的值也会发生变化,联动其datatable中的值也会发生变化,即选中时,datatable对应的值会变成1;未选中时,其值为0。那么我们可以通过如下代码获取选中的所有信息;

DataRow[] drs = dt.Select("选择='1'");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
控件是基于Asp.Net平台的Web表格控件,用于Web网站的开发。 ★支持多种浏览器(IE6以上、FireFox2.0以上、谷歌浏览器等)。 ★使用本控件开发的网站,网页上表格行的插入、追加、删除、修改、上下移动、拷贝、粘贴等操作,能够立即在浏览器客户端完成,操作按钮在上图表格的左下部。 ★提交后的数据为一个DataTable。用户可使用GetCommitData方法取得使用本控件,很好地节约了网络资源,提升了网站的多用户对应能力。极大地提高了网页的反应速度,提升了网站浏览者的浏览体验。 ★本控件提供了丰富的自定义样式,供开发人员设定使用。表格GridStyle)、奇偶行(ItemStyle、AlternatingItemStyle)、列(列的ItemStyle)、列内的控件(列的ControlStyle)、合计行(PageTotalStyle、AllTotalStyle)、控制行(包含各种行操作按钮和页操作按钮ToolBarStyle)都可以自由的进行样式设定。 ★提供多种类型的列供开发人员使用:(LabelColumn(图A-金额),TextBoxColumn(图A-数量、单价),DropDownListColumn(图A-类别、商品),RadioButtonListColumn(图A-发货区分),CheckBoxColumn(图A-包装有无),RowIndexColumn(图A-ID),HiddenColumn(隐藏列),TemplateColumn(图A-备注,模板,用于扩展)。 ★支持多行表头显示(图A),支持列合并(图A-发货区分)、行合并(图A-备注)。使用本控件进行开发,开发人员能够自由设定各种显示效果。 ★支持开发人员自定义表头。 ★支持一个数据行,多行表格行表示。避免了列项目多的情况下,网页显示过宽的问题。(图A) ★支持金额、数字的自定义格式化功能。(图A-数量、单价,金额,金额美元) ★支持货币符号的自定义(如:$,¥)。(图A-金额,金额美元) ★支持列的公式自动计算功能。(图A-金额=数量×单价,金额美元=金额/汇率)列设定公式后,在网页上根据因子的变化自动计算结果。结合金额、数字的自定义格式化和货币符号的自定义功能,可开发专业性的财会、金融网站。 ★支持列的Ajax联动功能。特别定义了OnCallBack事件,开发人员能非常简单地实现Ajax联动,而页面不需要刷新。(图A-类别变化的时候,Ajax联动,更新了图A-商品列表) ★支持模板列(TemplateColumn),(图A-备注,模板)。并支持模板列的Ajax联动功能。模板列提供了扩展功能,使页面可以使用本控件支持的列类型之外的控件类型。 ★支持自定义分页(图A定义每页大小为3行)。可由开发人员自行决定网页提交的模式,是小批量多批次,还是大批量少批次。本控件的灵活性提高了网站的灵活适应性。 ★本控件自动提供自带的分页控件,提供页的导航功能(图A右下部)。开发人员也可以禁止本控件提供的分页控件,使用自己的分页控件或按钮调用本控件的分页功能。 ★表格行的上下移动功能,在分页的情况下,当需要跨页的情况下,自动提交数据,执行RowMoving事件,开发者可以在此事件执行真正的数据行的上下移动,再绑定显示数据。 ★表格行的拷贝、粘贴功能,在分页的情况下,支持跨页执行,支持带Ajax联动列的直接拷贝。 ★支持操作的撤销、恢复功能,提升用户操作体验。 ★支持页合计和全部页合计。支持五种合计类型(Sum,Max,Min,Count,Average)。通过简单的开关设置,就可以完成合计功能。(图A-数量、金额、金额美元,设定了Sum合计;图A-单价,设定了Average合计)。 ★支持多种数据源。 ★所见即所得的设计时支持,方便软件开发者进行页面设计。 ★提供丰富、实用的JS接口,供开发人员使用。 ★本控件的开发,力求功能的简洁、实用、耐用。提升开发人员的开发体验。 QQ:1030032915 MSN:IntelliGrid@hotmail.com

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值