Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf DataGrid-仅在需要时添加新行_Wpf_Datagrid - Fatal编程技术网

Wpf DataGrid-仅在需要时添加新行

Wpf DataGrid-仅在需要时添加新行,wpf,datagrid,Wpf,Datagrid,我有一个带有两列a和b的数据网格。b列表示百分比 我希望在开始处有一个可编辑的行,并让它们填写a列和b列 如果b列小于100%,我想添加一个新的可编辑行。当总百分比小于100%时,我希望始终添加新行 关于如何做到这一点(使用MVVM)有什么想法吗 datagrid绑定到一个ObservableCollection。首先想到的是在ViewModel中完全处理这个问题。您可以收听ObservableCollection的CollectionChanged,如果添加了一个项,则对B列求和,如果总和低于

我有一个带有两列a和b的数据网格。b列表示百分比

我希望在开始处有一个可编辑的行,并让它们填写a列和b列

如果b列小于100%,我想添加一个新的可编辑行。当总百分比小于100%时,我希望始终添加新行

关于如何做到这一点(使用MVVM)有什么想法吗


datagrid绑定到一个ObservableCollection。

首先想到的是在ViewModel中完全处理这个问题。您可以收听ObservableCollection的CollectionChanged,如果添加了一个项,则对B列求和,如果总和低于100%,则向ObservableCollection添加一个新项

如果您希望支持编辑集合中的现有项,也可以这样做。收听项目上的PropertyChanged事件,如果B列已更改,则汇总B列并决定是否需要新项目


如果你想要一些示例代码,请告诉我

非常感谢你的帮助。我已经尝试过类似的方法,但是我遇到了propertychanged通知的问题。在将第一项添加到集合之前,我正在附加事件处理程序,因此它没有侦听。你的帖子足以让我意识到我的方法是正确的,我只是错过了一步。谢谢,伙计