【发布时间】:2013-08-06 11:57:17
【问题描述】:
我正在尝试寻找适合在 .NET 4.5 WPF 项目中使用的组件。如果可能,该项目应该受益于 caliburn.micro 绑定约定。
原始数据由一组复杂对象(我们自己的类)组成,这些对象由它们的元数据(主题、日期、小时)索引。
视觉表示应如下所示:
视觉表现应该是略带 3D 的。带有强烈边框的表示一个单一主题的一周。在该区域内,每一行是一天,每一列是当天的特定小时。
单元格应该可以单独选择(如左键单击)、连续选择(Shift 键)或随机选择(Ctrl 键)。当复杂类型的属性发生变化时,控件需要支持上下文菜单和重绘单元格。
无需移动列、行、用户添加行或列的能力,也无需在线编辑单元格值。
我尝试使用 DataGrid,但它不符合要求,我找不到任何其他有用的控件,也找不到任何基本类型。
您对如何获得它有什么建议吗?使用什么控件,如果不是微不足道的,如何将控件设置为根据需要工作等。
【问题讨论】:
-
您可以使用一些嵌套的
ItemsControls 轻松地做到这一点,但是您可能会遇到性能问题,具体取决于您需要的列数。否则你将不得不实现自己的VirtualizingGrid我猜。 -
即使使用嵌套的 ItemsControl 处理选择/取消选择(多个)单元格也很容易?将只有几千个细胞。所有单元格从一开始就可用,或者它们将被批量添加到用户任务中。一两秒的加载时间是可以接受的。
-
创建一个合适的 ViewModel,一切都会变得简单。