代码之家  ›  专栏  ›  技术社区  ›  erelender

将一个属性绑定到另一个属性

  •  3
  • erelender  · 技术社区  · 16 年前

    我有嵌套的GroupBox,它在逻辑上表示我的应用程序中的嵌套数据结构。假设我有一个这样的结构:

    Dev1  
    - CDev1  
    - CDev2  
        - ICDev1  
        - ICDev2
    

    我有复选框来启用/禁用每个开发人员。我想将子复选框的复选状态绑定到父复选框的复选状态。我希望该机制像这样工作:当我检查CDev2时,ICDev1&自动检查ICDev2。但当我取消选中ICDev1时,CDev2将保持其自己的状态。基本上,我希望这些事件传播到子级,而不是像单向绑定那样传播到父级。

    我正在使用.NET2.0SP2。我不知道这是否可行,所以如果你能给我一些建议,我会很高兴的。如果不可能,我将为所有复选框实现事件处理程序。

    5 回复  |  直到 16 年前
        1
  •  5
  •   Julien Poulin    16 年前

    childCheckBox.DataBindings.Add("Checked", parentCheckBox, "Checked");
    

    您可能还想看看 TreeView 控件,它具有显示的选项 CheckBox 在每个项目旁边。

        2
  •  0
  •   Randolpho    16 年前

    在WPF中使用双向绑定在理论上是可能的(下面是一个例子) tutorial on data binding in WPF ).我认为你不能用WinForms自动完成。如果您使用的是WinForms,则必须捕获并处理事件以手动修改此类状态更改。

        3
  •  0
  •   Juozas Kontvainis    16 年前

        4
  •  0
  •   Arsen Mkrtchyan    16 年前

        5
  •  0
  •   Community Mohan Dere    8 年前

    看一看 here ,以及 link 肯特·布加特(Kent Boogart)的桁架图书馆,它完全绕过了winforms。但它可能需要一些子类化,这取决于您的模型,因为它的工作方式类似于wpf绑定。