【发布时间】:2026-01-08 04:35:01
【问题描述】:
当相应的源值为空时,我试图显示一个包含“NULL”字符串的单元格而不是空白单元格。我正在使用绑定到DataTable 和AutoGenerateColumns="True" 的DataGrid。
以前我设法通过 AutoGeneratedColumns 事件在代码隐藏中做到这一点,但现在我已经切换到 MVVM 设计,我想避免这种情况。
foreach (var column in dgwCustomTableSelected.Columns)
{
if (column is DataGridTextColumn)
{
((DataGridTextColumn)column).Binding =
new Binding() {
Converter = new NullValueConverter((string)column.Header)
};
}
}
我想知道是否有办法将转换器关联到所有数据网格列或任何其他可行的解决方案。
提前致谢
【问题讨论】:
-
mvvm != 没有代码隐藏。具体来说,视图相关的代码应该存在于视图中。许多新的 mvvm 开发人员认为一切都必须出来,并且经常犯将 UI 相关代码放在他们的视图模型中的错误。不要那样做。
标签: c# wpf mvvm datagrid ivalueconverter