XAML中的WPF MVVM UserControl数据绑定不工作

XAML中的WPF MVVM UserControl数据绑定不工作,wpf,mvvm,user-controls,binding,Wpf,Mvvm,User Controls,Binding,我有一个用户控件,其中数据源是一个可观察的集合。 如果我通过代码设置用户控件实例的数据源,它就会工作 Chapters.DataSource = vm.ChapterList; 但是试图通过ht xaml绑定是行不通的 <b:ChapterStack x:Name="Chapters" DataSource="{Binding ChapterList}"></b:ChapterStack> 窗口上的其他控件绑定到VM并正确显示 我必须做什么才能让我的usercontr

我有一个用户控件,其中数据源是一个可观察的集合。 如果我通过代码设置用户控件实例的数据源,它就会工作

Chapters.DataSource = vm.ChapterList;
但是试图通过ht xaml绑定是行不通的

<b:ChapterStack x:Name="Chapters" DataSource="{Binding ChapterList}"></b:ChapterStack>
窗口上的其他控件绑定到VM并正确显示

我必须做什么才能让我的usercontrol通过xaml绑定


谢谢?

请确保已将ChapterStack控件的DataSource属性定义为依赖属性,否则将无法绑定它。

它吃掉了编辑器添加的我的xaml:usercontrol x:Name=Chapters DataSource={Binding ChapterList}xaml,感谢您是否将视图的DataContext设置为XAML中视图模型的实例?要使给定的XAML行正常工作,vm需要作为DataContext存在。它是?有没有绑定错误?检查输出窗口。this.DataContext=\u vm//从xaml代码behindyep、public static readonly dependencProperty datasourceproperty yalso、public observetecollection DataSource{get{return observetecollectiongetvaluedatasourceproperty;}set{SetValueDataSourceProperty,value;}尝试通过添加虚拟转换器并在其中设置断点来调试绑定。这会让你知道你得到了什么价值。这可能有助于@AbdouMoumen,找到了。我在初始化事件的控件上设置DataSource=new ObservableCollection。@迈克,如果你找到了解决方案,你应该回答你自己的问题。