фона:Есть ли способ временно отсоединить привязку в WPF?
У меня есть ListView
/GridView
с несколькими столбцами. В некоторых ситуациях отображаются только некоторые из столбцов. Поскольку свойство Visible
для GridViewColumns
в WPF, я устанавливаю ширину столбцов, которые я хочу скрыть до нуля. Визуально это достигает желаемого эффекта (и я фактически модифицировал ControlTemplate
для GridViewColumnHeader
, чтобы пользователь не мог случайно развернуть скрытые столбцы).
Проблема:
Проблема заключается в том, что привязки для скрытых столбцов все еще в игре, и они пытаются искать данные, которые не существуют. В этом случае он вызывает IndexOutOfRangeException
, поскольку он пытается найти имя столбца, которое не существует на DataTable
, к которому оно привязано.
Вопрос:
Как можно временно отключить или отсоединить привязку для столбцов, которые скрыты? Или, пожалуйста, предложите лучшее решение, если оно у вас есть.
Спасибо!
Я согласен, что это хорошее решение вашей проблемы. Единственное, что я хотел бы сделать, это изменить return String.Empty, чтобы вернуть Binding.DoNothing. – Dennis
Хорошая идея, спасибо! – devuxer