|
分類:[.NET 全般]
VC#2008 WPFアプリケーション
<TreeView Name="treeView">
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type c:MyItem}" ItemsSource="{Binding SubItems}">
<StackPanel Orientation="Horizontal">
<Rectangle Width="16" Height="16" Fill="Blue" />
<Label Content="{Binding Name}" />
</StackPanel>
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
class MyItem
{
public string Name { get; set; }
public List<MyItem> SubItems { get; private set; }
public MyItem(string name)
{
this.Name = name;
this.SubItems = new List<MyItem>();
}
}
MyItem item1 = new MyItem("あああ");
MyItem item2 = new MyItem("いいい");
MyItem item3 = new MyItem("ううう");
MyItem item4 = new MyItem("えええ");
item1.SubItems.Add(item2);
item1.SubItems.Add(item3);
item3.SubItems.Add(item4);
this.treeView.ItemsSource = Enumerable.Repeat(item1, 1);
ツリービューの項目を展開する場合はTreeViewItem.IsExpandedをtrueにすればいいようですが
上記のように項目がTreeViewItemで無い場合はIsExpandedが使えません。
例えばitem3の項目を展開したい場合はどうすればいいのでしょうか。
|