Обязательный класс имеет свойство под названием TargetNullValue, который может использоваться для замены чем-то еще, если привязка возвращает Нулевое значение. Ваш пример становится:-
<TextBlock Text="{Binding Path=columnX, TargetNullValue=My Substitute Text}"/>
Существует другое свойство Обязательного класса, который является также полезным названным FallbackValue. Это было бы значением замены, чтобы использовать, если выражение привязки не может быть разрешено (т.е. не найдено), например, для того, когда путь, который Вы используете (columnX в Вашем примере) не является членом контекста данных или источника.
Обновление (Gishu): Требует Платформы.NET 3,5 SP1 загрузка 53 МБ. Без него вышеупомянутый код не скомпилирует. TargetNullValue является новым дополнением к Обязательному классу.
Щелкните правой кнопкой по файлу DBML, нажмите код View. Добавьте a partial class
для таблицы Вы хотите работать с. Добавьте возврат свойства value ?? null
или что-то как этот. Прием - то, что LINQ к SQL объявляет классы как неравнодушные, таким образом, можно легко расширить их.
Я не думаю, что существует более чистый способ сделать это. Вы могли возможно использовать DataTrigger в шаблоне стиля для взятия на нулевых значениях, но триггеры данных могут быть немного "забавными", когда использование АННУЛИРУЕТ так, Вам, вероятно, был бы нужен преобразователь так или иначе.