方案
您执行分析,并且您想绘制结果。您的分析结果显示在不同的UI组件上,您还可以使用其他一些UI组件来自定义绘图。在这方面,我们假设:
Datagrid_1
Combobox
Radiobuttons
,可让您选择绘图类型(即条形图,热图等)。Datagrid_2
),您可以选择不同的回归模型。 简单来说,您可以Button
Command
将Button
绑定到一个函数,该函数将根据您对UI元素的选择更新绘图。这可以通过让您选择偏好然后点击Button
来实现。但是,为了改善用户体验,我们希望自动完成该过程。这意味着当您的任何选择更改时,绘图会自动更新。这意味着:我们完全删除了If `DataGrid_1` `selectedItem` is changed
If `Combobox` `selectedIndex` is changed
If a `RadioButton` is `Checked`
If `DataGrid_2` `selectedItem` is changed
I would like the plot to be refreshed.
。
MVVM
问题
鉴于我的应用程序是以import java.util.ArrayList;
ArrayList<Integer> vowels = new ArrayList<Integer>()
while (line != null) {
vowels.add(countVowels(line));
}
模式实现的,那么我的方案最好的解决方法是什么?
答案 0 :(得分:1)
1)为可能被选中的外翻过滤器创建一个属性。那些不需要通知变更。
2)将该属性绑定到grid和combo的selectedItem。
3)为每个无线电制作一个bool属性并将其绑定到无线电的IsChecked属性。
4)将旧的Refresh命令绑定到GridI和组合更改的SelectedItem,以及每个无线电的Checked和Unchecked。您必须使用交互式触发器来执行此操作。
5)使目标网格的itemsSource通知更改。
6)更改刷新命令以使用这些过滤器属性并将结果设置为itemsSource属性。
如果没有人回答并且时间允许,我明天会发布一些代码示例!
答案 1 :(得分:1)
由于您正在使用MVVM模式,因此一种简单的方法是使数据绑定属性在Datagrid_1发生更改时触发数据刷新。
e.g。
a1.js