【问题标题】:Data that updates other user controls in WPF更新 WPF 中其他用户控件的数据
【发布时间】:2011-05-02 20:17:32
【问题描述】:

我目前有两个使用对象列表的用户控件。这些对象列表是咖啡类型。这 2 个用户控件以不同的方式显示咖啡类型。

我想要做的是,当在一个用户控件中选择咖啡类型时,它将更新或突出显示在另一个用户控件中选择的相同咖啡类型。

我尝试创建一个ObservableCollection 让两个用户控件都可以查看,但没有成功。

还有其他想法吗?

谢谢!

【问题讨论】:

  • 您是否尝试将 SelectedValue 从一个列表绑定到另一个?

标签: wpf data-binding user-controls


【解决方案1】:

您正在寻找的机器人:Selector.IsSynchronizedWithCurrentItem

您可以将 IsSynchronizedWithCurrentItem 属性设置为 true,以确保所选项目始终对应于 ItemCollection 中的 CurrentItem 属性。例如,假设有两个 ListBox 控件的 ItemsSource 属性设置为相同的源。在两个列表框上将 IsSynchronizedWithCurrentItem 设置为 true,以确保每个 ListBox 中的选定项相同。

【讨论】:

  • err... 了解 H.B.正在谈论,您需要先检查CollectionView - 例如滚动到MSDN页面的底部。
  • @DK: 不是真的,不需要关注 CollectionViews 因为每个集合都有一个自动生成的默认视图。
  • 啊,很高兴认识 H.B.,谢谢 - 这是一个非常有趣的话题。
  • 大家好,我还是不太明白。但也许我会澄清更多。这两个用户控件,每个都有一个依赖属性来保存列表(一个可观察的集合),当它被渲染时,它会读取这个列表并更新每个用户的 UI。所以现在,在一个用户控件中,当我选择一种咖啡类型时,它会以任何方式呈现它,并且我知道点击了什么。但是将其传递给另一个用户控件,这可以通过 Selector 来完成吗?
  • @Angelus:尝试在两个用户控件内的两个列表控件上设置IsSynchronizedWithCurrentItem="True"(可能使用户控件本身从内部控件转发此属性)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-07
  • 1970-01-01
相关资源
最近更新 更多