找回密码
 立即注册

QQ登录

只需一步,快速开始

credream

中级会员

110

主题

296

帖子

828

积分

中级会员

积分
828

活字格认证

credream
中级会员   /  发表于:2015-11-5 09:48  /   查看:6140  /  回复:3
现有一MultiRow,一共有三列,其中第一列为SelectAble=False列,其他两列为可编辑列。

当该MultiRow有滚动条的时候,如果选中其中一个单元格,然后通过拖动滚动条的形式把选中的单元格拖动到表示范围之外。

然后光标迁移到其他控件上,

1,鼠标在滚动条的游标(就是滚动条上可移动的矩形框)上左键压下,
MultiRow4.0会把选中的单元格表示出来。鼠标放开后,光标移动到MultiRow上,位置还是选中的单元格被隐藏的状态。

2,鼠标在MultiRow的第一列上单击,这个时候,选中的单元格会表示在表示范围内。比如:如果选中单元格在上部的非表示行
的时候,该选择单元格所在的行会成为表示的第一行。如果选中单元格在下部的非表示行,该选择单元格所在的行会成为表示的最后一行。

3 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-11-5 11:47:00
沙发
回复 1楼credream的帖子

谢谢您的反馈。
测试版本:MultiRow8.0&VS2013。
测试步骤:
1.给MultiRow设置模板3列,设置RowCount=10.并且设置第一个cell的Selectable为false
2.运行时,选中第二列的第一行的单元格。
3.通过滚动条将单元格设置为不可见。
4.将焦点移到textBox控件。
5.点击滚动条的thumb button。
没有重现您提到的问题。
另外尝试在第一列上单击,也不会出现您描述的问题。

请提供必然重现的步骤,我们帮您看看。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
credream
中级会员   /  发表于:2015-11-5 14:16:00
板凳
回复 2楼Alice的帖子

MultiRow4.0可以实现上面的动作,我希望通过代码能把8.0实现同样的动作。

你的动作应该是点击滚动条,隐藏单元格还是隐藏,点击第一个单元格隐藏单元格还是处于隐藏状态吧?

希望可以实现点击不可落光标的单元格的时候,滚动条自动移动到隐藏的单元格表示出来的地方。
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-11-5 17:38:00
地板
回复 3楼credream的帖子

默认情况点击不可选择的单元格,不会触动滚动。
如果您想点击selectable=false的单元格的时候让选择的单元格进入可视区域。
可以设置FirstDisplayedCellPosition属性让选择的区域进入可视区域。
基本思路就是:
调用CellMouseClick事件,并在该事件里判断是否点击到合适的位置(比如selectable=false的单元格),然后设置FirstDisplayedCellPosition属性。
  1. this.gcMultiRow1.FirstDisplayedCellPosition = this.gcMultiRow1.CurrentCellPosition;
复制代码
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部