我有一个视图模型,它显示在DataGrid
. 视图模型有 11 ICommand
。
因此,如果我们加载的DataGrid
元素超过 100 个。总共创建了 11*100 个命令。
加载整个文件大约需要 1 分钟DataGrid
。
我有一个视图模型,它显示在DataGrid
. 视图模型有 11 ICommand
。
因此,如果我们加载的DataGrid
元素超过 100 个。总共创建了 11*100 个命令。
加载整个文件大约需要 1 分钟DataGrid
。
您不会通过为每个 item实例化 11 个命令来将您的命令与您的项目相关联。无论您有多少项目,您都应该有一个命令(或在您的情况下为 11 个)。该命令通过使用命令参数知道要对哪个项目进行操作。
将 11 个命令放入数据网格或窗口视图模型中,然后从项目视图模型中删除它们。将每个命令的 CommandParameter 绑定到您将调用该命令的项目,例如 Datagrid 中的选定项目。
WPF 动态上下文菜单解决了我的问题.. 您可以在数据网格行上使用 ContextMenu.ContextMenuOpening 事件来创建命令,同时右键单击该行。有关更多信息,请参阅此链接
上面的链接用于列表..您也可以以相同的方式使用 DataGrid
如果从调试器运行它通常需要很长时间。试试exe。