Compartir vía


TreeView.Indent Propiedad

Definición

Obtiene o establece el tamaño de la sangría de cada nivel de nodo de árbol secundario.

public:
 property int Indent { int get(); void set(int value); };
public int Indent { get; set; }
member this.Indent : int with get, set
Public Property Indent As Integer

Valor de propiedad

Tamaño, en píxeles, de la sangría de cada nivel de nodo de árbol secundario. El valor predeterminado es 19.

Excepciones

El valor asignado es menor que 0.

o bien

El valor asignado es mayor que 32.000.

Ejemplos

En el ejemplo de código siguiente se muestra un objeto personalizado TreeView. Al heredar la TreeView clase , esta versión personalizada tiene toda la funcionalidad de un típico TreeView. El cambio de varios valores de propiedad en el constructor proporciona una apariencia única. Dado que la ShowPlusMinus propiedad está establecida en false, el control personalizado también invalida el OnAfterSelect método para que los nodos se puedan expandir y contraer cuando se hace clic en ellos.

Un control personalizado de esta manera se puede usar en toda una organización, lo que facilita la prestación de una interfaz coherente sin necesidad de especificar las propiedades de control en cada proyecto individual.

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

Comentarios

Al establecer esta propiedad en un valor de -1 no se produce una excepción si el valor aún no se ha cambiado de su valor predeterminado. Esto se debe a que el control usa un valor de -1 como valor predeterminado interno antes de que se haya creado el identificador de control. Este valor predeterminado interno hace que el control ajustado devuelva su propio valor predeterminado de 19.

Se aplica a