如何将TextBox绑定到ListBox的选定成员的相应属性?

时间:2014-03-05 16:26:35

标签: c# wpf xaml binding textbox

我有一个通知列表:

public List<Notification> Notifications { get; set; }

我的UI中的ListBox绑定到此列表:

<ListBox ItemsSource="{Binding Notifications}" DisplayMemberPath="ServiceAddress" Name="NotificationsList"/>

在我的UI中,我也有这个TextBox:

<TextBox Name="MatchWindowTextBox"/>

MatchWindow是Notification对象中的一个属性...所以我可以从上面的列表中访问它:Notifications[SomeIndex].MatchWindow。无论如何,当有人更改ListBox上的选择时,这会有效地选择不同的通知...所以有没有办法将我的TextBox绑定到所选通知的MatchWindow属性?

1 个答案:

答案 0 :(得分:2)

一种快捷的方法是使用ElementName绑定:

<TextBox Text="{Binding SelectedItem.MatchWindow, 
                        ElementName=NotificationsList}"/>

但是,更好的方法是在ViewModel中创建类型为SelectedItem的{​​{1}}属性,并将其绑定到该属性:

Notification