ツリービューにルート項目を追加する場合はTreeViewクラスのItemsプロパティが持つAddメソッドを使用し、子項目を追加する場合はTreeViewItemクラスのItemsプロパティが持つAddメソッドを使用します。
下記は[追加]ボタンがクリックされた時に、ルート項目に子項目を追加する例です。
XAMLの例(WPFの場合)
<DockPanel LastChildFill="True"> <StackPanel Orientation="Horizontal" DockPanel.Dock="Top" Margin="3"> <TextBlock Text="追加項目名:"/> <TextBox Name="TextBox1" Width="100" /> <Button Name="Button1" Content="追加"/> </StackPanel> <TreeView> <TreeViewItem Name="rootItem" Header="親" /> </TreeView> </DockPanel>
XAMLの例(Silverlightの場合)
<TextBlock Height="23" HorizontalAlignment="Left" Margin="12,49,0,0" Text="追加項目名:" VerticalAlignment="Top" /> <TextBox Height="24" HorizontalAlignment="Left" Margin="84,45,0,0" VerticalAlignment="Top" Width="120" Name="TextBox1" /> <Button Content="追加" Height="23" HorizontalAlignment="Left" Margin="210,45,0,0" VerticalAlignment="Top" Width="51" Name="Button1" /> <sdk:TreeView Height="200" HorizontalAlignment="Left" Margin="10,78,0,0" VerticalAlignment="Top" Width="251"> <sdk:TreeViewItem Header="親" Name="rootItem"/> </sdk:TreeView>
VBの例
''' <summary> ''' [追加]ボタンクリック時の処理 ''' </summary> ''' <param name="sender"></param> ''' <param name="e"></param> ''' <remarks></remarks> Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click Dim newItem As New TreeViewItem '追加する子項目のラベルを設定 newItem.Header = TextBox1.Text 'ルート項目に子項目を追加 rootItem.Items.Add(newItem) End Sub
C#の例
/// <summary> /// [追加]ボタンクリック時の処理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Button1_Click(object sender, RoutedEventArgs e) { TreeViewItem newItem = new TreeViewItem(); // 追加する子項目のラベルを設定 newItem.Header = TextBox1.Text; // ルート項目に子項目を追加 rootItem.Items.Add(newItem); }