找回密码
 立即注册

QQ登录

只需一步,快速开始

yinzhm

初级会员

32

主题

129

帖子

339

积分

初级会员

积分
339

活字格认证微信认证勋章

yinzhm
初级会员   /  发表于:2014-9-16 10:48  /   查看:9090  /  回复:7
好!
MultiRow for winforms 7.0 sp3
问题:
插入新行的时候,活动行会跟着移动。这是multirow的动作。当数据超过一页的时候,前面的数据就会向上滚动。
需求:
在插入数据的过程中,不希望看到数据一直向上滚动,甚至看不到数据也可以。将所有数据都插入完成之后,再将数据显示出来。
疑问:
(1)suspendlayout可以控制控件的重绘,但貌似不是所有的重绘都能控制,希望了解一下XXXXXlayout究竟能控制什么,可以具体点吗,比如活动单元格背景色的重绘等等这种粒度,非常感谢。很迷惑,很多时候suspendlayout达不到预期的效果。
(2)Spread的activecell和activeview是可以分别控制的,比如一页最大5行,activecell的rowindex为8,activeview的toprow可以设置为0.  multirow有类似的实现方式吗?不吝赐教,谢谢!

7 个回复

倒序浏览
dafo
版主   /  发表于:2014-9-16 15:51:00
沙发
我不是很清楚你是怎么插入新行的,是通过数据源吗?
用this.gcMultiRow1.Rows.Add();是不会滚动的。

MutliRow中如果CurrentCell位置改变,是会自动滚动的,这个没有办法禁掉。
你可以通过下边的事件重定向CurrentCell的位置,这样MultiRow就不会滚动了。
  1.             this.gcMultiRow1.NewCellPositionNeeded += new EventHandler<GrapeCity.Win.MultiRow.NewCellPositionNeededEventArgs>(gcMultiRow1_NewCellPositionNeeded);
  2.         void gcMultiRow1_NewCellPositionNeeded(object sender, GrapeCity.Win.MultiRow.NewCellPositionNeededEventArgs e)
  3.         {
  4.             e.NewCellPosition = new GrapeCity.Win.MultiRow.CellPosition(0, 0);
  5.         }
复制代码

关于你的问题:
(1)MultiRow的SuspendLayout是系统Control的默认实现,没有特殊处理,请参考DataGridView.
(2)MultiRow没有ActiveView的概念,非常抱歉。
回复 使用道具 举报
yinzhm
初级会员   /  发表于:2014-9-17 19:01:00
板凳
回复 2楼dafo的帖子

Rows.add  确实不会滚动。
造成滚动的原因是其他代码的原因。非常感谢。

关于(1)和(2),谢谢版主的回答,了解了。
(1)的话,我在查查DataGridView。
(2)的话,我以前也是用版主的方式实现的,但是这样会多触发几次cellenter , cellbeginedit ,cellleave,cellendedit等,造成部分逻辑多次执行,需要用其他方式规避掉。
当逻辑比较简单的时候,还好办。但是当逻辑复杂的时候,真是。。。。。
回复 使用道具 举报
dafo
版主   /  发表于:2014-9-18 09:12:00
地板
关于第二个问题,我不知道你是否是在做数据绑定,如果是数据绑定的话,你可以不将Table直接绑定到GcMultiRow,可以用ADO的TableView概念,在底层模拟View的东西,GcMultiRow只是为展示服务。

希望对你有帮助。
回复 使用道具 举报
yinzhm
初级会员   /  发表于:2014-9-18 16:14:00
5#
回复 4楼dafo的帖子

谢谢!

想法很好,值得尝试一下。
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-9-18 18:55:00
6#
回复 5楼yinzhm的帖子

如果尝试后,可以将结果反馈给我们。
谢谢你最近一直来论坛,也一直支持我们的产品。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
yinzhm
初级会员   /  发表于:2014-9-18 20:41:00
7#
回复 6楼Alice的帖子

好的,有结果一定反馈!

忠实用户啊,哈哈!
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-9-19 12:11:00
8#
回复 7楼yinzhm的帖子

呵呵,的确是啊。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

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