Basic Library for WPF/Silverlight
ノードの選択
製品の概要 > TreeView > ツリービューの機能 > ノードの選択

実行時にノードをクリックすると、そのノードは自動的に選択中としてマークされます。カスタム機能を提供するために、ノードをクリックすると、SelectionChanged イベントが発生します。ノードがクリックされなくても選択中としてマークするには、IsSelected プロパティを有効にします。

ユーザーが新しい項目を選択すると、C1TreeViewSelectionChanged イベントを発生します。そこで、SelectedItem プロパティを使用すると、選択中の項目を取得できます。

それには、いくつかの方法があります。

Visual Basic
コードのコピー
' ノードを作成し、その Tag プロパティにデータを割り当てます
  Dim item As New C1TreeViewItem()
  item.Header = "Beverages"
  item.Tag = beveragesID
C#
コードのコピー
// ノードを作成し、その Tag プロパティにデータを割り当てます
  C1TreeViewItem item = new C1TreeViewItem();
  item.Header = "Beverages";
  item.Tag = beveragesID;

後で、この情報を適当に使用できます:

Visual Basic
コードのコピー
Dim item As C1TreeViewItem = _tv.SelectedItem
    ' 飲料 ノードを処理します
If TypeOf item.Tag Is Integer AndAlso CInt(item.Tag) = beveragesID Then
End If

C#
コードのコピー
C1TreeViewItem item = _tv.SelectedItem;
if (item.Tag is int && (int)item.Tag == beveragesID)
{
    // 飲料 ノードを処理します
}
XAML
コードのコピー
<c1:C1TreeView Name="C1TreeView1" Height="300" Width="200" >
    <c1:C1TreeViewItem IsExpanded="True" Margin="10">
        <c1:C1TreeViewItem.Header>
            <CheckBox>
                <CheckBox.Content>
                    <TextBlock Text="Desktop" />
                </CheckBox.Content>
            </CheckBox>
        </c1:C1TreeViewItem.Header>
    <c1:C1TreeViewItem>
        <c1:C1TreeViewItem.Header>
            <CheckBox>
                <CheckBox.Content>
                    <TextBlock Text="User" />
                </CheckBox.Content>
            </CheckBox>
        </c1:C1TreeViewItem.Header>
    </c1:C1TreeViewItem>   
</c1:C1TreeView>

選択された項目を取得する

Header プロパティは、C1TreeViewItem に含まれる値を返します。次のコードを使用して、その文字列値を取得できます。

Visual Basic
コードのコピー
Dim item As C1TreeViewItem = _tree.SelectedItem
_textBlock.Text = item.Header.ToString()
C#
コードのコピー
C1TreeViewItem item = _tree.SelectedItem;
_textBlock.Text = item.Header.ToString();