任何人都可以幫助以下 - 一直在玩這個,但不能爲我的生活得到它的工作。WPF綁定到Listbox selectedItem
我有一個視圖模型,其中包含以下屬性;
public ObservableCollection<Rule> Rules { get; set; }
public Rule SelectedRule { get; set; }
在我的XAML中,
<ListBox x:Name="lbRules" ItemsSource="{Binding Path=Rules}"
SelectedItem="{Binding Path=SelectedRule, Mode=TwoWay}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Name:" />
<TextBox x:Name="ruleName">
<TextBox.Text>
<Binding Path="Name" UpdateSourceTrigger="PropertyChanged" />
</TextBox.Text>
</TextBox>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
現在的ItemsSource工作正常,我得到規則的列表,在lbRules顯示他們的名字對象。
麻煩我正在將SelectedRule屬性綁定到lbRules的SelectedItem。我嘗試將文本塊的文本屬性綁定到SelectedRule,但它始終爲空。
<TextBlock Text="{Binding Path=SelectedRule.Name}" />
我看到在輸出窗口中的錯誤是: BindingExpression路徑錯誤:找不到「SelectedRule」屬性。
任何人都可以幫助我這個綁定 - 我不明白爲什麼它不應該找到SelectedRule屬性。
然後我試着改變文本塊的文本屬性作爲波紋管,它工作。麻煩的是我想在我的ViewModel中使用SelectedRule。
<TextBlock Text="{Binding ElementName=lbRules, Path=SelectedItem.Name}" />
非常感謝您的幫助。
就是這樣,傻了我,我沒有在該視圖模型上實現接口。一整天早上我的頭撞在牆上! 非常感謝您的幫助。也非常感謝其他人,特別是Yacoder,花時間看看這個。 – 2010-01-06 14:27:14
也謝謝我。剛剛有確切的問題。我實現了界面,但忘記提高事件。 – 2011-09-19 21:05:01