在WPF中,如何将DataGrid中的选择限制为仅在同一行或同一列中的单元格?
|
我们有一个DataGrid,它允许用户多选单元格。但是,我们有一个独特的业务需求。特别...
第一个单元格:您可以在任何地方选择
第二个单元格:必须与第一个单元格在同一行或同一列中。
其他单元格:必须与第二个单元格所定义的行或列相同。
我看不到要使用的任何PreviewSelectionChanges方法,也看不到任何阻止Shift-Selections跨越允许选择范围的方法。
我当前的想法是保持一个
int? Row;
和int? Col;
属性,当我收到选择更改事件后,该属性用于修剪选定的单元格,但是在我看来这并不是很清楚,因为它是在事实发生之后发生的。我想要说\'Cell(c,r)即将被选中的内容。您允许吗?\',我可以从那里去。
所以...有什么想法吗?
没有找到相关结果
已邀请:
2 个回复
芦歉竭皑
的位置不一定表示
的位置,但通常是正确的。因此,如果您确定“ 2”在“禁止的”单元格中,则可以提醒用户或执行您想执行的其他任何任务。 您还可以在
事件中进行检查(我相信这是一个事件),以便首先检查是否选中的单元格是“禁止”单元格。如果是这样,您可以取消该事件,该事件将阻止选择该单元格。根据ѭ6的工作方式(我还无法测试),您可能需要为几个Mouse事件执行此操作。
镶骄册筷