与wpfcomboboxDisplayMemberPath,SelectedValue和SelectedValuePath混淆

我一直在努力与这些comboBox属性

  1. 的DisplayMemberPath
  2. 的SelectedValue
  3. SelectedValuePath

我正在构build一个主细节表单。

  1. combobox充满了客户
  2. 用户select组合中的客户
  3. 所有文本框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属性。

要了解其他两个,你应该先了解SelectedItemSelectedItem将从ComboBox返回当前select的Employee对象。 您也可以使用一个Employee对象来分配SelectedItem ,以在ComboBox设置当前的select。

SelectedValuePath指向Id ,这意味着您可以通过使用SelectedValue获取当前所选EmployeeId 。 您还可以通过将SelectedValue设置为一个Id (我们假设它将出现在Employees列表中),在ComboBox设置当前选定的Employee