在单击元素之间鼠标单击时,可以选择wpf datagrid行

时间:2011-05-24 12:34:24

标签: c# wpf datagrid

我有DataTemplates,其中元素并不总是填充整个单元格(即因为我增加了行高)。

现在只有当我在元素内部单击时才会选中一行,如果我在元素外部单击,但仍然没有发生任何事情。

即使我点击元素之间,如何使WPF数据网格行可选。

一个想法是在数据网格中监听MouseDown,但是如何识别行

更新:解决方法是给所有单元格datatemplate一个带透明背景的边框来填充单元格(我觉得这不是很优雅)。

1 个答案:

答案 0 :(得分:1)

我不知道为什么你认为为你的内容添加“缓冲区”并不是一种非常优雅的方式来实现扩大该内容的可点击区域的目标。

我认为这正是你应该做的,从风格的角度来看,它在建筑上是完全合理的,最重要的是从我的观点来看,为了清晰和简单。

确实有其他解决方案可以为用户提供相同的净效果,但缓冲方法确实这个优雅的属性:

  • 如果单击它并响应,则您单击的内容是响应内容的一部分

整体编程可能相当不优雅。它往往是一堆特殊情况和复杂的解决方案,似乎应该是容易出问题。着名的计算机科学家唐纳德克努特说,他觉得程序员程序员能够应对这些不雅的事情。让数学家变得疯狂的事情。