0

我有一个视图模型,它显示在DataGrid. 视图模型有 11 ICommand

因此,如果我们加载的DataGrid元素超过 100 个。总共创建了 11*100 个命令。

加载整个文件大约需要 1 分钟DataGrid

4

3 回答 3

4

您不会通过为每个 item实例化 11 个命令来将您的命令与您的项目相关联。无论您有多少项目,您都应该有一个命令(或在您的情况下为 11 个)。该命令通过使用命令参数知道要对哪个项目进行操作。

将 11 个命令放入数据网格或窗口视图模型中,然后从项目视图模型中删除它们。将每个命令的 CommandParameter 绑定到您将调用该命令的项目,例如 Datagrid 中的选定项目。

于 2013-03-19T05:56:32.340 回答
1

WPF 动态上下文菜单解决了我的问题.. 您可以在数据网格行上使用 ContextMenu.ContextMenuOpening 事件来创建命令,同时右键单击该行。有关更多信息,请参阅此链接

上面的链接用于列表..您也可以以相同的方式使用 DataGrid

于 2013-03-19T13:55:51.413 回答
0

如果从调试器运行它通常需要很长时间。试试exe。

于 2013-03-19T04:59:26.683 回答