与wpfcomboboxDisplayMemberPath,SelectedValue和SelectedValuePath混淆
我一直在努力与这些comboBox属性
- 的DisplayMemberPath
- 的SelectedValue
- SelectedValuePath
我正在构build一个主细节表单。
- combobox充满了客户
- 用户select组合中的客户
- 所有文本框EG正确填充
我遇到的问题我已经做到了,但是我不了解这些性质和差异。 有没有一个不好的例子解释他们做什么? 你可能会认为是自我解释,不要对我不利。
感谢您的input
我想我们可以通过一个例子来更好地理解这一点。 看这个class:
public class Employee { public int Id { get; set; } public string Name { get; set; } }
和下面的xaml:
<ComboBox ItemsSource="{Binding Source={StaticResource Employees}}" DisplayMemberPath="Name" SelectedValuePath="Id"/>
DisplayMemberPath
指向Name
属性,因此ComboBox
显示的值和下拉列表中包含的Employee
条目将成为Employee
对象的Name
属性。
要了解其他两个,你应该先了解SelectedItem
。 SelectedItem
将从ComboBox
返回当前select的Employee
对象。 您也可以使用一个Employee
对象来分配SelectedItem
,以在ComboBox
设置当前的select。
SelectedValuePath
指向Id
,这意味着您可以通过使用SelectedValue
获取当前所选Employee
的Id
。 您还可以通过将SelectedValue
设置为一个Id
(我们假设它将出现在Employees
列表中),在ComboBox
设置当前选定的Employee
。