TreeView.SelectedImageIndex Propiedad

Definición

Obtiene o establece el valor de índice de la lista de imágenes de la imagen que se muestra cuando se selecciona un nodo de árbol.

C#
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.TreeViewImageIndexConverter))]
public int SelectedImageIndex { get; set; }
C#
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.NoneExcludedImageIndexConverter))]
[System.Windows.Forms.RelatedImageList("ImageList")]
public int SelectedImageIndex { get; set; }

Valor de propiedad

Valor de índice de base cero que representa la posición de una Image en una ImageList.

Atributos

Excepciones

value es menor que 1.

Ejemplos

En el ejemplo de código siguiente se crea y asigna un ImageList objeto a un TreeView control y se rellena el TreeView control con TreeNode objetos . A los nodos de árbol se les asignan imágenes de que ImageList se muestran cuando están en un estado seleccionado o no seleccionado. En este ejemplo se requiere que tenga un Form objeto que contenga un TreeViewobjeto y un ArrayList que contenga Customer objetos que contienen Order cada uno de ellos. También se supone que se definen los Customer objetos y Order .

C#

public class Customer
{
   public ArrayList CustomerOrders;
   public string CustomerName;
   public Customer(string myName)
   {
      CustomerName = myName;
      CustomerOrders = new ArrayList(); 
   }
}
public class Order
{
   public string OrderID;
   public Order(string myOrderID )
   {
      this.OrderID = myOrderID;
   }
}

private void FillTreeView()
{
    // Load the images in an ImageList.
    ImageList myImageList = new ImageList();
    myImageList.Images.Add(Image.FromFile("Default.gif"));
    myImageList.Images.Add(Image.FromFile("SelectedDefault.gif"));
    myImageList.Images.Add(Image.FromFile("Root.gif"));
    myImageList.Images.Add(Image.FromFile("UnselectedCustomer.gif"));
    myImageList.Images.Add(Image.FromFile("SelectedCustomer.gif"));
    myImageList.Images.Add(Image.FromFile("UnselectedOrder.gif"));
    myImageList.Images.Add(Image.FromFile("SelectedOrder.gif"));
    
    // Assign the ImageList to the TreeView.
    myTreeView.ImageList = myImageList;
    
    // Set the TreeView control's default image and selected image indexes.
    myTreeView.ImageIndex = 0;
    myTreeView.SelectedImageIndex = 1;

    /* Set the index of image from the 
    ImageList for selected and unselected tree nodes.*/
    this.rootImageIndex = 2;
    this.selectedCustomerImageIndex = 3;
    this.unselectedCustomerImageIndex = 4;
    this.selectedOrderImageIndex = 5;
    this.unselectedOrderImageIndex = 6;
    
    // Create the root tree node.
    TreeNode rootNode = new TreeNode("CustomerList");
    rootNode.ImageIndex = rootImageIndex;
    rootNode.SelectedImageIndex = rootImageIndex;
      
    // Add a main root tree node.
    myTreeView.Nodes.Add(rootNode);

    // Add a root tree node for each Customer object in the ArrayList.
    foreach(Customer myCustomer in customerArray)
    {
        // Add a child tree node for each Order object.
        int countIndex=0;
        TreeNode[] myTreeNodeArray = new TreeNode[myCustomer.CustomerOrders.Count];
        foreach(Order myOrder in myCustomer.CustomerOrders)
        {
            // Add the Order tree node to the array.
            myTreeNodeArray[countIndex] = new TreeNode(myOrder.OrderID,
              unselectedOrderImageIndex, selectedOrderImageIndex);
            countIndex++;
        }
        // Add the Customer tree node.
        TreeNode customerNode = new TreeNode(myCustomer.CustomerName,
            unselectedCustomerImageIndex, selectedCustomerImageIndex, myTreeNodeArray);
        myTreeView.Nodes[0].Nodes.Add(customerNode);
    }
}

Comentarios

El SelectedImageIndex valor es el índice de un Image almacenado en el ImageList asignado a la ImageList propiedad .

Nota

Al establecer la SelectedImageIndex propiedad en tiempo de ejecución, se vuelve a crear el TreeView identificador (vea Control.RecreateHandle) para actualizar la apariencia del control. Esto hace que todos los nodos de árbol se contraigan, excepto para el seleccionado TreeNode.

SelectedImageKey y SelectedImageIndex son mutuamente excluyentes, lo que significa que si se establece uno, el otro se establece en un valor no válido y se omite. Si establece la SelectedImageKey propiedad , la SelectedImageIndex propiedad se establece automáticamente en -1. Como alternativa, si establece la SelectedImageIndex propiedad , se SelectedImageKey establece automáticamente en una cadena vacía ("").

Se aplica a

Producto Versiones
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Consulte también