2009-05-08 2 views
1

Каковы лучшие практики или советы по привязке данных к объектам?как бороться с сложной привязкой объекта winform?

У меня есть сложный сценарий привязки данных, где моя winform имеет BindingSource, установленную для объекта. Этот объект является классом типа Клиента и формы связаны свойства клиента, как «FirstName», «LastName» и т.д.

Каждого свойство имеет следующий шаблон (псевдо-код)

  • ПОЛУЧАЕТ: return mProperty
  • set: mProperty = значение; PropertyHasChanged()

Некоторые изменения некоторых свойств требуют автоматического задания других значений. Например:

  • Выбор страны будет загружать второй выпадающий список со списком штатов/провинций
  • Проверка флажка (DataBound к булевой собственности) установит страну и штат/провинцию конкретных значений

Где я могу поместить код, который будет устанавливать страну и страну/провинцию на основе этого флажка? Если я установил свойства в неправильном порядке (провинция страны), изменение в стране приведет к изменению списка провинций и переопределит выбранную провинцию, поскольку она не будет в списке (это тривиальный пример, но отражает проблемы времени).

Каковы наилучшие практики или советы по привязке данных к объектам?

ответ

0

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

Что вы имеете, хотя и выглядите как поток состояния в заданном состоянии, делаете X. Добавьте свойство 'hidden', которое правильно представляет состояние, которое вы хотите использовать для ваших привязок: PreDefined, Normal, Advanced, а затем привязка может также действовать на этом как «подсказка», чтобы знать, как правильно отображать себя.

Надеюсь, это поможет.

Смежные вопросы