如何使wpf datagrid某些行只读取行中的特定日期值

时间:2014-07-08 01:27:30

标签: wpf c#-4.0 wpf-controls wpfdatagrid wpf-4.0

根据datagrid行中的日期字段列加载数据网格时,我的WPF数据网格中的某些行必须是只读的。怎么能得到这个。任何人都可以帮我提供一些示例代码。假设日期字段值大于特定日期,则使数据网格中的行只读。我在加载数据网格时需要它。

1 个答案:

答案 0 :(得分:1)

我建议您可以使用ValueConverter,在AutogeneratingColumn事件中,您可以根据值禁用单元格。在这里,我假设您要比较的日期对于所有行都是固定的和通用的,并且在将数据绑定到数据网格之前它们是已知的。

解决方案:

创建一个值转换器,它将返回true或false(或者你想要的任何值) 并在自动生成列中设置该特定列只读。因为将为所有列触发自动生成列事件。因此,它会自动将readonly设置为所有列,从而可以实现功能。

处理数据网格的加载事件,然后在加载的事件中,您可以获取列和行的所有值,并通过迭代所有行,您可以使它们只读 根据您的要求。

现在,我没有安装visual studio,因此无法向您显示确切的代码。

如果您仍然有任何疑问。请告诉我,在应用解决方案之前,请同时考虑我的假设。