【问题标题】:how to deal with complex winform object databinding?如何处理复杂的winform对象数据绑定?
【发布时间】:2010-10-24 16:32:33
【问题描述】:

关于将数据绑定到对象的最佳做法或技巧是什么?

我有一个复杂的数据绑定场景,我的 winform 将 BindingSource 设置为一个对象。此对象是 Customer 类型的类,表单绑定了客户的属性,如“firstName”、“lastName”等。

每个属性都有以下模式(伪代码)

  • 获取:返回 mProperty
  • 设置:mProperty = 值; PropertyHasChanged()

对某些属性的某些更改需要自动设置其他值。例如:

  • 选择国家/地区将加载第二个下拉列表,其中包含州/省列表
  • 选中复选框(数据绑定到布尔属性)会将国家和州/省设置为特定值

我应该将根据复选框设置国家和州/省的代码放在哪里?如果我以错误的顺序设置属性,(国家的省份)更改国家将强制更改省份列表并覆盖所选省份,因为它不会在列表中(这是一个简单的例子,但反映了时间问题)。

关于将数据绑定到对象的最佳做法或技巧是什么?

【问题讨论】:

    标签: winforms data-binding


    【解决方案1】:

    绑定不必是一对一的。例如,您可以通过监听国家或复选框的变化来确定省份。

    虽然看起来像状态流,但在给定状态下,执行 X。添加一个“隐藏”属性,正确表示您要用于绑定的状态:预定义、正常、高级,然后绑定可以也可以将此作为“提示”,以了解如何正确显示自己。

    我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-06
      • 1970-01-01
      • 2014-02-02
      • 2014-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多