wpf - 如何将可观察集合绑定(bind)到用户控件数组?

标签 wpf data-binding mvvm observablecollection

WPF 中的数据绑定(bind)很棒,但当您尝试让事情变得更复杂时,实现起来就会变得极其困难。

我有一个对象集合,其中每个对象都具有绑定(bind)到用户控件的可观察属性。

我想(理想情况下)简单地将一个新对象添加到我的集合中,并在我的表单上显示一个新的用户控件。问题是用户控件需要动态创建,所以每次我添加到集合中时,我可能必须手动创建一个新控件、设置绑定(bind)并将其添加到我的 Window。是否有更简单的 MVVM 风格的方式来绑定(bind)到这样的结构?

最佳答案

使用 ItemsControlDataTemplate

<ItemsControl ItemsSource="{Binding YourCollection}">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <uc:YourUserControl />
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

关于wpf - 如何将可观察集合绑定(bind)到用户控件数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1259266/

相关文章:

c# - WPF 使 ListView 高度与 Grid 行高相同

Java Play - 将对象列表与内部的 Map<String, AnotherObject> 绑定(bind)

vb.net - 如何将属性数据绑定(bind)到 Wpf 中的文本框

wpf - 如何使用 WPF MVVM 回滚组合框的选定 SelectedValue

wpf - 如何在 ViewModel 中播放 Storyboard?

wpf - 依赖属性如何告诉对象适用?

android - 如何将 Android DataBinding 绑定(bind)到菜单?

android - 一个 ViewModel 用于多个 View 还是多个 ViewModel 用于单个 View ?

wcf - 使用 MVVM 模式将 WPF 网格绑定(bind)到 WCF 服务

MVVM 中动态创建 MenuItem-Separator 的 WPF 光学样式