找回密码
 立即注册

QQ登录

只需一步,快速开始

junlingzhu2002

银牌会员

38

主题

150

帖子

3344

积分

银牌会员

积分
3344

活字格认证

[已处理] 行的选择

junlingzhu2002
银牌会员   /  发表于:2012-10-23 08:19  /   查看:13342  /  回复:11
按RowHeardCell,这一行的Cell被选择,
怎样可以根据数据的不同,进行选择
比如有下面的数据,点击第1行或者第2行
第1行和第2行同时被选择,可以实现吗,
背景色也是根据 项目3的变化,而交替表示
       项目1  项目2  项目3
1    A         a        10
2    B         b        10
3    C         c        11
4    D        d         20
5    E        e         20

11 个回复

倒序浏览
wedy.wang
初级会员   /  发表于:2012-10-24 09:07:00
沙发
>点击第1行或者第2行,第1行和第2行同时被选择,可以实现吗
请处理GcMultiRow.CellClick事件,并在事件处理函数里面写下面的代码:

  1.         private void gcMultiRow1_CellClick(object sender, GrapeCity.Win.MultiRow.CellEventArgs e)
  2.         {
  3.             Cell cell = this.gcMultiRow1[e.RowIndex, e.CellIndex];
  4.             if (cell is RowHeaderCell)
  5.             {
  6.                 //遍历所有Row
  7.                 for (int i = 0; i < this.gcMultiRow1.RowCount; i++)
  8.                 {
  9.                     //如果项目3的值跟点击的Row的项目3的值相等,就做选择。
  10.                     if (object.Equals(this.gcMultiRow1.GetValue(i, 3), this.gcMultiRow1.GetValue(e.RowIndex, 3)))
  11.                     {
  12.                         this.gcMultiRow1.AddSelection(i);
  13.                     }
  14.                 }
  15.             }
  16.         }
复制代码
回复 使用道具 举报
junlingzhu2002
银牌会员   /  发表于:2012-10-25 16:33:00
板凳
谢谢,我用的是VB.NET,可以从新发一下吗
回复 使用道具 举报
wedy.wang
初级会员   /  发表于:2012-10-25 18:12:00
地板
回复 4楼junlingzhu2002的帖子

Private Sub gcMultiRow1_CellClick(sender As Object, e As GrapeCity.Win.MultiRow.CellEventArgs) Handles GcMultiRow1.CellClick
        Dim cell As Cell = Me.GcMultiRow1(e.RowIndex, e.CellIndex)
        If TypeOf cell Is RowHeaderCell Then
            '遍历所有Row
            For i As Integer = 0 To Me.GcMultiRow1.RowCount - 1
                '如果项目3的值跟点击的Row的项目3的值相等,就做选择。
                If Object.Equals(Me.GcMultiRow1.GetValue(i, 3), Me.GcMultiRow1.GetValue(e.RowIndex, 3)) Then
                    Me.GcMultiRow1.AddSelection(i)
                End If
            Next
        End If
    End Sub
回复 使用道具 举报
junlingzhu2002
银牌会员   /  发表于:2012-11-5 09:48:00
6#
谢谢
回复 使用道具 举报
junlingzhu2002
银牌会员   /  发表于:2012-11-5 10:50:00
7#
另外再补充问一下
同样的日期在画面只第一件表示,
但是如果Scrool上下移动时,
这个日期则表示在Scrool移动后画面的第一行
回复 使用道具 举报
wedy.wang
初级会员   /  发表于:2012-11-6 09:06:00
8#
回复 7楼junlingzhu2002的帖子

你好,不是很明白你说的意思,能不能更清楚的描述一下?
回复 使用道具 举报
junlingzhu2002
银牌会员   /  发表于:2012-11-8 09:47:00
9#
大概就是这样

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
wedy.wang
初级会员   /  发表于:2012-11-15 10:59:00
10#
回复 9楼junlingzhu2002的帖子

你的这个需求用目前的MultiRow 6.0做起来比较复杂。而MulitRow7.0提供的AutoMerge以及AllowCellContentFloat两行代码就可以搞定这件事情。如果你是日文版用户,可以考虑尝试我们的日文版,日文版在2012/11/21就可以试用。参考:
http://www.grapecity.com/tools/products/multirowwin7
回复 使用道具 举报
junlingzhu2002
银牌会员   /  发表于:2012-11-16 08:20:00
11#
是吗,太好了,
那我就等到21日,
谢谢
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部