xuehf_hz 发表于 2019-7-20 13:21:07

C1GridView选定行以及手动加入的属性和方法

本帖最后由 xuehf_hz 于 2019-7-20 13:26 编辑

1.关于行选定,C1GridView的名称为vsf1   
我在浏览器里面选定了行,可是在服务端取vsf1.SelectedRow 是空   取 vsf1.SelectedIndex是-1,也就是说无论如何取不到当前选定的行,请问是什么原因?
ClientSelectionMode 设置为SingleRange

2.关于手动加行的问题
原来windowsForm 里有vsf1.rows.add,在ASP.Net 里面好像没有这个方法了,请问该用哪一个方法手动添加一行?,不用自动绑定,谢谢

Richard.Ma 发表于 2019-7-20 13:21:08

我看你的需求,只是判断client端的选择,然后赋值给文本框,你参考3楼我给你回复的页面就行了,并不需要隐藏字段

Demo路径:ComponentOne Samples\ASP.NET Web Forms\WebForms\CS\ControlExplorer

Home > Controls > GridView > Selection > CurrentCell

Richard.Ma 发表于 2019-7-21 00:18:16

你好,周一会帮你验证这两个问题。然后给你答复

Richard.Ma 发表于 2019-7-22 11:22:38

你好

1.客户端的行选择和变化只能是通过js来获取,你可以通过开发包这个demo来学习
Demo路径:ComponentOne Samples\ASP.NET Web Forms\WebForms\CS\ControlExplorer

Home > Controls > GridView > Selection

2. 这个绑定的是数据表,没法通过后台代码直接添加行,前端也没有提供添加行的接口,因此只能是在绑定的数据表中添加行来完成

xuehf_hz 发表于 2019-7-22 12:04:34

谢谢,关于第一个问题,我是想从服务端取得当前选定的行,不是通过客户端,在服务端编程的时候,取到的vsf1.SelectedIndex=-1 以及 .SelectedRow 是nothing ,无论如何取不到当前选 定的行

Richard.Ma 发表于 2019-7-22 17:45:22

C1GridView提供两种选择模式:

   1、服务器端selection,由SelectedIndex属性确定。 要选择行,用户需要使用“选择”按钮,可以通过打开AutogenerateSelectButton属性来显示。如下图第一列即是选择按钮,可以通过这种方式改变后台的 SelectedIndex值




   2、由SelectionMode属性控制的客户端选择。


这两种模式彼此无关,即客户端选择不影响服务器端,不会更改SelectedIndex属性。

如果需要将客户端的选择传输到后台,可以参考下面链接中最下面的代码
https://www.grapecity.com/forums ... c1gridview-postback

xuehf_hz 发表于 2019-7-23 11:22:16

非常感谢

Richard.Ma 发表于 2019-7-23 11:31:05

不客气

xuehf_hz 发表于 2019-7-23 16:58:23

真的不好意思,那个例子看了还是不太明白
function selectionChanged(e, args) {

   if (args.get_addedCells().get_length() > 0) {

         $("#hiddenField").val(args.get_addedCells().get_item(0).get_rowIndex());

   } else {

         $("#hiddenField").val("");

   }
能不能帮我把这段代码改一下,我希望把选定行的值放到一个页面上名称为textbox1的文本里即可,谢谢

xuehf_hz 发表于 2019-7-23 19:45:38

好的,谢谢
页: [1] 2
查看完整版本: C1GridView选定行以及手动加入的属性和方法