通过绑定文本框选择列表框中的项目

时间:2010-08-20 13:55:43

标签: c# wpf

我有一个列表框,其中填充了具有两个属性的对象列表。其中一个属性显示在列表框中,另一个属性通过绑定显示在文本框中。我想知道是否有一种方法可以通过更改文本框的值来更改列表框上的选择,因为我无法使用选定的索引或选择的项目

1 个答案:

答案 0 :(得分:2)

为了举个例子,我假设您有一个客户列表,Customer.Name属性显示在列表框中,Customer.Id属性显示在文本框中。您可以这样设置绑定:

<ListBox
    x:Name="CustomerList"
    DisplayMemberPath="Name"
    SelectedValuePath="Id"
    SelectedValue="{Binding ElementName=CustomerId, Path=Text}" />
<TextBox x:Name="CustomerId" />

现在,在CustomerList列表框中选择了Customers,其各自的Id值将显示在CustomerId文本框中。更重要的是,反向也有效:在文本框中键入有效的ID,相应的客户将在列表框中被选中。