次の方法で共有


TreeView.ShowPlusMinus プロパティ

定義

子ツリー ノードを含むツリー ノードの横に、プラス記号 (+) ボタンとマイナス記号 (-) ボタンを表示するかどうかを示す値を取得または設定します。

public:
 property bool ShowPlusMinus { bool get(); void set(bool value); };
public bool ShowPlusMinus { get; set; }
member this.ShowPlusMinus : bool with get, set
Public Property ShowPlusMinus As Boolean

プロパティ値

子ツリー ノードを含むツリー ノードの横にプラス記号ボタンとマイナス記号ボタンを表示する場合は true。それ以外の場合は false。 既定値は、true です。

次のコード例は、カスタマイズされた TreeViewを示しています。 クラスを TreeView 継承することで、このカスタム バージョンには一般的な TreeViewのすべての機能があります。 コンストラクターのさまざまなプロパティ値を変更すると、一意の外観が提供されます。 プロパティが ShowPlusMinus false に設定されているため、カスタマイズされたコントロールはメソッドをオーバーライド OnAfterSelect して、ノードをクリックしたときに展開および折りたたむことができるようにします。

この方法でカスタマイズされたコントロールを組織全体で使用できるため、個々のプロジェクトでコントロール プロパティを指定しなくても、一貫性のあるインターフェイスを簡単に提供できます。

public ref class CustomizedTreeView: public TreeView
{
public:
   CustomizedTreeView()
   {

      // Customize the TreeView control by setting various properties.
      BackColor = System::Drawing::Color::CadetBlue;
      FullRowSelect = true;
      HotTracking = true;
      Indent = 34;
      ShowPlusMinus = false;

      // The ShowLines property must be false for the FullRowSelect
      // property to work.
      ShowLines = false;
   }

protected:
   virtual void OnAfterSelect( TreeViewEventArgs^ e ) override
   {
      // Confirm that the user initiated the selection.
      // This prevents the first node from expanding when it is
      // automatically selected during the initialization of
      // the TreeView control.
      if ( e->Action != TreeViewAction::Unknown )
      {
         if ( e->Node->IsExpanded )
         {
            e->Node->Collapse();
         }
         else
         {
            e->Node->Expand();
         }
      }

      
      // Remove the selection. This allows the same node to be
      // clicked twice in succession to toggle the expansion state.
      SelectedNode = nullptr;
   }
};
public class CustomizedTreeView : TreeView
{
    public CustomizedTreeView()
    {
        // Customize the TreeView control by setting various properties.
        BackColor = System.Drawing.Color.CadetBlue;
        FullRowSelect = true;
        HotTracking = true;
        Indent = 34;
        ShowPlusMinus = false;

        // The ShowLines property must be false for the FullRowSelect 
        // property to work.
        ShowLines = false;
    }

    protected override void OnAfterSelect(TreeViewEventArgs e)
    {
        // Confirm that the user initiated the selection.
        // This prevents the first node from expanding when it is
        // automatically selected during the initialization of 
        // the TreeView control.
        if (e.Action != TreeViewAction.Unknown)
        {
            if (e.Node.IsExpanded) 
            {
                e.Node.Collapse();
            }
            else 
            {
                e.Node.Expand();
            }
        }

        // Remove the selection. This allows the same node to be
        // clicked twice in succession to toggle the expansion state.
        SelectedNode = null;
    }
}
Public Class CustomizedTreeView
    Inherits TreeView

    Public Sub New()
        ' Customize the TreeView control by setting various properties.
        BackColor = System.Drawing.Color.CadetBlue
        FullRowSelect = True
        HotTracking = True
        Indent = 34
        ShowPlusMinus = False

        ' The ShowLines property must be false for the FullRowSelect 
        ' property to work.
        ShowLines = False
    End Sub


    Protected Overrides Sub OnAfterSelect(ByVal e As TreeViewEventArgs)
        ' Confirm that the user initiated the selection.
        ' This prevents the first node from expanding when it is
        ' automatically selected during the initialization of 
        ' the TreeView control.
        If e.Action <> TreeViewAction.Unknown Then
            If e.Node.IsExpanded Then
                e.Node.Collapse()
            Else
                e.Node.Expand()
            End If
        End If

        ' Remove the selection. This allows the same node to be
        ' clicked twice in succession to toggle the expansion state.
        SelectedNode = Nothing
    End Sub

End Class

注釈

プロパティ値が の場合にのみ、ルート ツリー ノードの横にプラス記号とマイナス記号のボタンがShowRootLinestrue表示されます。 プラス記号とマイナス記号のボタンが表示されない場合、ツリー ノードに子ツリー ノードが含まれており、展開可能であることを示す視覚的な手掛かりは存在しません。 その後、ユーザーはツリー ノードをダブルクリックして、子ツリー ノードが含まれているかどうかを判断するか、展開するか、折りたたむ必要があります。

適用対象

こちらもご覧ください