C# 为了使集合能够与绑定一起工作,集合有哪些要求?

C# 为了使集合能够与绑定一起工作,集合有哪些要求?,c#,wpf,xaml,data-binding,binding,C#,Wpf,Xaml,Data Binding,Binding,我有这个绑定(不要介意它是一个DataGridTextColumn属性): 我的问题是:MyCollectionType的要求是什么才能使绑定正常工作?我必须实现哪些接口?或者,如果不是接口继承让它工作,那么它是什么?可能是特定的方法名称?ItemsControl控件,它是ListBox、ListView、DataGrid、ComboBox或MenuItem等控件的基础,具有IEnumerable类型的属性: 公共IEnumerable ItemsSource{get;set;} 这是主要的条件

我有这个
绑定
(不要介意它是一个
DataGridTextColumn
属性):


我的问题是
MyCollectionType
的要求是什么才能使
绑定
正常工作?我必须实现哪些接口?或者,如果不是接口继承让它工作,那么它是什么?可能是特定的方法名称?

ItemsControl
控件,它是
ListBox
ListView
DataGrid
ComboBox
MenuItem
等控件的基础,具有
IEnumerable
类型的属性:

公共IEnumerable ItemsSource{get;set;}

这是主要的条件。如果集合实现了
IEnumerable
接口,则可以绑定到该集合

WPF从不直接绑定到集合。如果将集合指定为绑定源,WPF实际上会绑定到集合的默认视图

如果您希望绑定自动拾取对集合所做的更改(添加/删除项),那么您还需要实现接口或使用就绪的实现,如。

您可以在以下目录下阅读更多信息:


您想要双向装订还是单向装订?
...
<DataGridTextColumn Binding="{Binding Path=Whatever}"/>
...
MyCollectionType<WhateverWrapper> { get; set; }
class WhateverWrapper {
    public string Whatever { get; set; }
}