爲什麼我在這個例子中看不到詳細信息。我無法更改數據類,主類和詳細類的結構。所以我必須用正確的約束來解決這個問題。WPF中的主要細節綁定
public class ViewModel
{
public dataclass data { get; set; }
public ViewModel()
{
data = new dataclass();
master a_master = new master();
a_master.mastername = "hello";
detail a_detail = new detail();
a_detail.detailname = "goodbye";
data.details.Add(a_detail);
data.Add(a_master);
}
}
public class dataclass : ObservableCollection<master>
{
public ObservableCollection<detail> details { get; set; }
public dataclass()
{
details = new ObservableCollection<detail>();
}
}
public class master
{
public string mastername { get; set; }
}
public class detail
{
public string detailname { get; set; }
}
而在我的XAML我綁定是這樣的:
<Window x:Class="md.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="clr-namespace:md.viewmodels"
Title="MainWindow" Height="350" Width="525">
<Window.DataContext>
<vm:ViewModel/>
</Window.DataContext>
<StackPanel Orientation="Vertical" >
<ListView ItemsSource="{Binding Path=data}">
<ListView.View>
<GridView>
<GridViewColumn Header="master" DisplayMemberBinding="{Binding mastername}"/>
</GridView>
</ListView.View>
</ListView>
<ListView ItemsSource="{Binding Path=data/details}">
<ListView.View>
<GridView>
<GridViewColumn Header="detail" DisplayMemberBinding="{Binding detailname}"/>
</GridView>
</ListView.View>
</ListView>
</StackPanel>
</Window>
您需要先接受一些答案。 – Bernard 2012-02-11 16:22:25