两个连接的组合框+ XML + DataBinding

时间:2011-12-16 15:08:24

标签: wpf data-binding xmldataprovider

我遇到与thisthis类似的问题。 这是一个描述:

我有以下XML:

<Parts>
  <Part id="1" name="part1">
    <SubParts>
      <SubPart id="1" name="sub_part1"/>
      <SubPart id="2" name="sub_part2"/>
    </SubParts>
  </Part>
  ...
</Parts>

当然,我想在我的WPF控件中有两个依赖ComboBox项 - 一个用于部件,一个用于子部件。

与上述解决方案的不同之处在于我不想替换第二个ComboBox 的DataContext,因为我松开了父DataContext绑定。

我想得到这样的东西:

  <ComboBox x:Name="_partCombo"  ItemsSource="{Binding Source={StaticResource xmlPartList}, XPath=./Part}"
              ...
              SelectedValue="{Binding PartID}"/>

  <ComboBox x:Name="_subPartCombo"  ItemsSource="{Binding Source={StaticResource xmlPartList}, XPath=./Part/SubParts}"
              ...
              SelectedValue="{Binding SubPartID}"/>

我尝试使用中间数据成员绑定第一个ComboBox中的选定项目,但我无法从第二个绑定到它。

需要任何帮助。

1 个答案:

答案 0 :(得分:0)

尝试

ItemsSource="{Binding Source={StaticResource xmlPartList}, 
                      RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Window},
                      XPath=./Part/SubParts}"