У меня есть таблица данных WPF, которую я использую с несколькими столбцами. В одном из столбцов есть некоторые элементы, которые иногда являются нулевыми, и это вызывает исключение, когда я пытаюсь отсортировать этот столбец.
Определения столбцов что-то вроде:
<dg:DataGrid.Columns>
<dg:DataGridTextColumn Binding="{Binding MyObject.Field1}" Header="Field1" Width="Auto" />
<dg:DataGridTextColumn Binding="{Binding MyObject.Field2.SubField}" Header="Field2" Width="Auto" />
</dg:DataGrid.Columns>
Если я сортирую по столбцу Field1, это нормально, если я сортирую по столбцу Field2 и нет нулевых объектов Field2, это нормально, но иногда это происходит, и DataGrid пытается сортировать по SubField (я полагаю) и нажимает нулевое исключение:
System.InvalidOperationException was unhandled
Message=The SortDescriptions added are not valid. The probable solutions are to set the CanUserSort on the Column to false, or to use SortMemberPath property on the Column, or to handle the Sorting event on DataGrid.
Я попытался установить SortMemberPath на «MyObject.Field2.SubField», но, конечно, это не исправляет это, поскольку Field2 все еще иногда нулевой. Я задумался о том, чтобы попытаться использовать конвертер, в котором я установил SortMemberPath и у него есть конвертер, возвращающий string.empty для любых нулевых элементов, но не смог заставить его работать.
Я также попытался добавить «TargetNullValue = {x: Static sys: String.Empty}» в привязку этих столбцов, но это все равно не сработало.
Любые советы / предложения будут наиболее цениться.
Спасибо,
Будет