zongxudong 发表于 2013-12-24 15:16:00

SpreadWPFSilverlight 数据源绑定的问题

Spread WPF Silverlight 的数据绑定, 很不完善呀. 之前我使用自定义的 ConnectionBase 来绑定数据. 目前看来. 数据源的数据更新太恼火了.每次修改数据都需要调用 Sheet 的 ReloadBindingData() 方法来进行更新. 如果不是这样. 我发现有部分数据总是不能刷新.grid.Invalidate(),View.UpdateLayout() 等有关更新的方法都试用过了. 不知道内部是个什么更新机制. :-|

现在, 我想重新设计, 将数据源跟 Sheet 彻底分开, 数据源的改变通知 Sheet 来重新设置值, 而 Sheet 的改变又来设置回数据源. 不知道这样的设计是否合理. 我比较担心的有如下几个问题.

1. 数据源的改变需要频繁的调用 Sheet.SetValue 方法. 是否会有效率影响. 因为用户改动部分数据都会关联其他数据.
2. 设计是否过于复杂, 表面上看有点简单. 但是考虑深入, 比如列的移动, 行删除, 数据源的行新增, 数据验证. ... 这些工作好像都还比较大
3.

主要还是效率问题. 我的后台数据有可能很大.


希望, 指教
非常感谢

iceman 发表于 2013-12-24 16:51:00

回复 1楼zongxudong的帖子

感谢您的问题反馈。

1.可以以单元格范围为单位进行刷新,Spread WPF-Silverlight 版本提供了IsValidRange方法用于单元格范围的刷新。
2.实际上当前的 ConnectionBase也没有提供“列的移动, 行删除, 数据源的行新增”等功能,如果需要,都需要进行自定义。

有其他问题欢迎继续交流。

谢谢

zongxudong 发表于 2013-12-24 17:01:00

最麻烦的就是使用了 ConnectionBase 后不能进行正常的, 单元格刷新. 刷新也不能重新在数据源里面获取数据.

提个问题Sheet 里面有个 SetArray 方法, 是怎么用的? 是不是批量设置数据的时候, 效率会比较高?

zongxudong 发表于 2013-12-24 17:25:00

哦. 谢谢. 我已经看到文档了.

iceman 发表于 2013-12-24 18:31:00

回复 4楼zongxudong的帖子

奥,好的,感谢反馈
页: [1]
查看完整版本: SpreadWPFSilverlight 数据源绑定的问题