Установка Silverlight DataGrid просто для выдачи исключения, когда поле привязки не существует - PullRequest
1 голос
/ 30 ноября 2009

Я просто потратил впустую потратил много времени, пытаясь выяснить, почему у определенной сетки данных среди многих были показаны сжатые строки без текста. После многих попыток проб и ошибок выяснить, что делает эту сетку особенной, я наконец обнаружил, что класс, используемый для элементов строки, был помечен как закрытый.

Это вполне веская причина, но я бы предпочел иметь возможность сузить ее до проблемы привязки (и, если возможно, «поле недоступно из-за сообщения типа« уровень защиты ») гораздо раньше» систематически разбирать весь запутанный процесс, необходимый для получения данных и настройки этой сетки. В идеале я не должен был видеть неправильное поведение в первую очередь, ошибка должна была произойти немедленно, когда столбец попытался прочитать из поля, которое он не мог.

Все мои наборы данных наследуются от пользовательского базового класса для применения некоторых глобальных стандартов - если есть что-то, что я могу сделать в своем классе CustomDataGrid, чтобы вызывать исключение при сбое выражения связывания столбцов, например, если класс / свойство является частным или имя свойства было неправильно введено в выражении привязки? (Это отличается от проверки привязки).

1 Ответ

1 голос
/ 30 ноября 2009

Я всегда слежу за окном вывода отладки при работе с привязкой данных SL / WPF. Фреймворк (-ы) на самом деле довольно хорошо генерирует сообщения о проблемах привязки данных, которые включают в себя конкретные детали о том, с какими полями не удалось связать или какие у вас есть.

Это не совсем отвечает на ваш первоначальный вопрос, но это помогло мне разобраться с проблемами связывания, как только я понял, что там была добавлена ​​хорошая информация.

...