如何绑定到父集合的项目?

时间:2016-03-15 12:22:54

标签: wpf xaml data-binding listbox relativesource

我有以下数据模型,它是集合中的集合:

var details1 = new ObservableCollection<Class2>();
details1.Add(new Class2() { Title = "text1" });
details1.Add(new Class2() { Title = "text2" });

var details2 = new ObservableCollection<Class2>();
details2.Add(new Class2() { Title = "text3" });
details2.Add(new Class2() { Title = "text4" });

var Items = new ObservableCollection<Class1>();
items.Add(new Class1() { IsActive = false, Details = details1 });
items.Add(new Class1() { IsActive = true, Details = details2 });

接下来,我有ListBox ItemsSource绑定到Items。此列表的DataTemplate包含另一个ListBox,其ItemsSource绑定到Details

简而言之,我的XAML正在显示一个项目列表,每个项目都显示一个项目详细信息列表。

我遇到的问题是我不知道如何绑定内部IsActive Class1DataTemplate属性的ListBox属性值}与Class2项目相关联。

我玩

"{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListBoxItem}}, Path=DataContext.IsActive}"

但这不起作用。

0 个答案:

没有答案