I think we can understand this better with an example. See this class:
public class Employee
{
public int Id { get; set; }
public string Name { get; set; }
}
and the following xaml:
<ComboBox ItemsSource="{Binding Source={StaticResource Employees}}"
DisplayMemberPath="Name"
SelectedValuePath="Id"/>
DisplayMemberPath
points to the Name
property, so the value displayed in the ComboBox
and the Employee
entries contained in the drop down list, will be the Name
property of the Employee
object.
To understand the other two, you should first understand SelectedItem
. SelectedItem
will return the currently selected Employee
object from the ComboBox
. You can also assign SelectedItem
with an Employee
object to set the current selection in the ComboBox
.
SelectedValuePath
points to Id
, which means you can get the Id
of currently selected Employee
by using SelectedValue
. You can also set the currently selected Employee
in the ComboBox
by setting the SelectedValue
to an Id
(which we assume will be present in the Employees
list).
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…