aita123 发表于 2018-5-5 08:43:08

TabPage控件上的MultRow的Selectable会失效,是MultiRow的Bug还是我不会用

本帖最后由 aita123 于 2018-5-9 09:28 编辑

我做了一个DEMO,
有一个TabControl控件,上面有多个TabPage,在每个Page上都放一个MultiRow控件(MultiRow的属性都是默认的)
然后,通过点击Button1这个按钮,给每一个MultiRow绑定数据,并设定每个MultRow的每个单元格的Selectable为False。

操作:
    画面初次启动就立即点击Button1按钮
期待结果:
    所有的MultiRow都正确的绑定了数据,并且所有MutliRow的每个单元格都是不可点击不可编辑
实际问题:
    如果画面一启动,我就点击Button1按钮,所有的MultiRow都正确的绑定了数据,
    但是只有第一个TabPage上的MultiRow的单元格是无法点击的,
    其他TabPage上的MultiRow的单元格是可点击可编辑的。

如果画面启动后,我先把所有的TabPage都点击一遍,再点击Button1按钮,那所有MutliRow的每个单元格就达到了我期望的不可点击不可编辑。

附上Demo程序,请版主或者其他达人给予指点。

AronChen 发表于 2018-5-23 19:05:23

您好,这个是MultiRow的策略。

原因:在这个demo里,如果不把每一个Tab的分页点击一遍,没有显示过的MultiRow控件是没有准备好数据源的。因此您这个时候点击按钮,去把所有的Multirow控件上所有的cell都设置为不可选择,的确是设置成功了。但等到切换到新的Tab,当前Tab 原来没打开过,MultiRow控件从未绑定过数据,于是开始准备数据源,准备完成后会清空所有设置。因此之前的设置不可选择信息丢失。

建议:如果您需要修改MultiRow控件上的cell设置,可以接DataBindingComplete事件,因为此时数据源已经设置完毕,所以在这个事件处理函数里可以放心的修改。

JeffryLI 发表于 2018-5-25 08:53:28

多谢回答哦
页: [1]
查看完整版本: TabPage控件上的MultRow的Selectable会失效,是MultiRow的Bug还是我不会用