【问题标题】:How to bind to CurrentItem of ICollectionView如何绑定到 ICollectionView 的 CurrentItem
【发布时间】:2011-05-03 23:09:42
【问题描述】:

我想把一个ICollectionView的属性给当前项目一个@我该怎么办呢? ICollectionView用于绑定组合框,如何将另一个控件绑定到ICollectionView的选中项?

【问题讨论】:

    标签: wpf .net-3.5 icollectionview


    【解决方案1】:

    看看这个cheat sheet。尤其要查看 / 绑定符号,它引用集合视图中的当前项。

    【讨论】:

    • 效果很好,我注意到如果我更改视图源上的当前项目,该值不会更新。我需要一个依赖属性吗?或者也许为此,我应该使用@Rachel 的方法?
    • @jiewmeng,看约翰的回复;你会想要使用 IsSynchronizedWithCurrentItem。
    【解决方案2】:

    在 ComboBox 上设置 IsSynchronizedWithCurrentItem 将使用其选择更新当前项目(不确定您是否已经这样做了)。然后,您可以绑定同一个集合并使用绑定访问其当前项:

    <ComboBox ItemsSource="{Binding Names}" IsSynchronizedWithCurrentItem="True" />
    <Button Content="{Binding Path=Names/}"/>
    

    【讨论】:

      【解决方案3】:

      为您的 ComboBox 命名并绑定到它的 SelectedItem。

      例如:

      <ComboBox x:Name="MyComboBox" ItemsSource="{Binding MyList}" />
      
      <Grid DataContext={Binding ElementName=MyComboBox, Path=SelectedItem>
      ...
      </Grid>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-08-04
        • 2011-09-12
        • 1970-01-01
        • 2012-08-19
        • 1970-01-01
        • 2011-09-13
        • 1970-01-01
        相关资源
        最近更新 更多