Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将数据绑定到WPF中的组合框_C#_Wpf_Wpf Controls - Fatal编程技术网

C# 将数据绑定到WPF中的组合框

C# 将数据绑定到WPF中的组合框,c#,wpf,wpf-controls,C#,Wpf,Wpf Controls,我正在尝试将CollectorTo列表中的配置文件绑定到wpf数据列表中的Combobox,请查找下面的代码 List<CollectorDTO> cdlist = new List<CollectorDTO>(); cbProfile.ItemsSource = cdlist; cbProfile.DisplayMemberPath = "Profile"; cbProfile.SelectedVa

我正在尝试将CollectorTo列表中的配置文件绑定到wpf数据列表中的Combobox,请查找下面的代码

List<CollectorDTO> cdlist = new List<CollectorDTO>();
            cbProfile.ItemsSource = cdlist;
            cbProfile.DisplayMemberPath = "Profile";
            cbProfile.SelectedValuePath = "Profile";

请帮助绑定数据?

您的显示成员路径应该是
\u profile
而不是
profile
。另外,请确保在设置绑定之前填充了列表,因为您使用的是一个非可观察集合的普通列表(组合框无法知道您在设置绑定后向列表中添加了什么)。

将列表定义更改为公共属性。大多数绑定只接受它们:

private List<CollectorDTO> _cdlist;
public List<CollectorDTO> cdlist 
{
    get { return _cdlist; }
    set { _cdlist = value; }
}
private List\u cdlist;
公开名单
{
获取{return\u cdlist;}
设置{u cdlist=value;}
}

OP使用get set方法指定了
以下变量,因此它只是完整属性的私有部分。虽然仍有可能将其命名为其他
Profile
,但我忽略了这个细节。我想唯一需要注意的是,在设置绑定之前,项目已添加到集合中。我已将项目添加到设置中,但只有绑定无法正常工作。您的列表中是否有项目?请记住,在绑定到控件之前,您应该填充列表,因为绑定到空集合根本不起作用。请使用ObservableCollection代替列表,CollectorTo应该实现INotifyPropertyChangedHe正在后面的代码中设置绑定。数据源是公共的还是私有的在这里应该无关紧要。到目前为止,他没有任何属性,只有变量-这可能是个问题
private List<CollectorDTO> _cdlist;
public List<CollectorDTO> cdlist 
{
    get { return _cdlist; }
    set { _cdlist = value; }
}