yinzhm 发表于 2014-7-19 18:25:00

Rows.Clear()方法使用时的不解和建议,仅供参考!

好!
MultiRow For Winforms 7.0
前提:我将MultiRow的AllowUserToAddRows设置为True。这个属性肯定都知道。
问题:如果把AllowUserToAddRows设置为True的话,即使调用Rows.Clear的话仍然会保留一行。
不理解的地方:Rows.Clear方法是将所有行删除(当然由于AllowUserToAddRows设置为True会保留一行),同时应该将所有数据清除,因为是Clear嘛,我觉得是这样。但是实际情况不是如此。
例如:RowCount=5的时候,通过【代码】将五行全部赋上值,然后调用Rows.Clear方法。这时的显示结果是,画面只剩余一行,但是该行数据没有清除,这样合理吗?作为我这个用户来讲不太方便,真心的。有改善的必要吗?
我的做法:调用Rows.Clear后,判断AllowUserToAddRows为True的话,再ClearRow(0)来达到我的目的。

dafo 发表于 2014-7-21 11:05:00

AddedRow从Grid设计上来讲是用户要添加的行,如果这一行没有提交,那么所有数据是存储在产品内部的,也就是传统意义上的Client端,这时如果用户调用Clear方法,我们默认是不清除AddedRow上的数据的,也就是要用户自己选择处理,这样的设计是为了保持用户的再次输入。
一个用例是,用户可能填了20多个数据项,可能某个数据项不合法,处理逻辑将会返回给用户修改而重新提交,保持用户数据的持久化。

yinzhm 发表于 2014-7-21 11:13:00

回复 2楼dafo的帖子

了解了,多谢版主解答!

Alice 发表于 2014-7-22 14:30:00

回复 3楼yinzhm的帖子

不用客气
页: [1]
查看完整版本: Rows.Clear()方法使用时的不解和建议,仅供参考!