我試圖從一個類實例綁定一些數據到一個TreeView。我的代碼如下:在WPF中綁定到TreeView
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Parent myClass = new Parent();
this.DataContext = myClass;
}
}
public class Parent
{
private List<string> children = new List<string>;
public string Name {get;set;}
public List<string> Children
{
get { return this.children; }
set { this.children=value; }
}
public Parent()
{
this.Name = "Test";
for (int i = 1; i <= 10; i++)
{
Children.Add(i.ToString());
}
}
}
而XAML:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:loc="clr-namespace:WpfApplication1"
Title="MainWindow" Height="287" Width="525">
<StackPanel Orientation="Horizontal" VerticalAlignment="Stretch">
<TreeView Name="TreeView" ItemsSource="{Binding}">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
</StackPanel>
</Window>
沒有在我的樹視圖顯示出來。我究竟做錯了什麼?
我希望看到:
- 測試
- 1
- 2
- 3
等
更新:使名兒童屬性,而不是公共領域。
已更新:添加了我期望在TreeView中看到的內容
在這種情況下,我將如何讓Parent.Name顯示爲頂級節點? 這是我希望看到的: - 測試 --1 --2 --3 --4 等 – KrisTrip 2010-03-24 15:48:47
創建類型家長的名單,並添加MyClass的給它。然後,將datacontext設置爲列表而不是對象。 – apandit 2010-03-24 15:54:11