TreeView.SelectedImageIndex Właściwość

Definicja

Pobiera lub ustawia wartość indeksu listy obrazów obrazu wyświetlanego po wybraniu węzła drzewa.

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

Wartość właściwości

Wartość indeksu zero, która reprezentuje pozycję elementu Image w obiekcie ImageList.

Atrybuty

Wyjątki

value wartość jest mniejsza niż -1.

Przykłady

Poniższy przykład kodu tworzy i przypisuje element ImageList do TreeView kontrolki i wypełnia kontrolkę TreeView obiektami TreeNode . Węzły drzewa są przypisywane obrazy z ImageList wyświetlanych w wybranym lub niezaznaczonym stanie. W tym przykładzie wymagane Form jest posiadanie obiektu zawierającego obiekt TreeViewi ArrayList zawierający Customer obiekty, które zawierają Order poszczególne obiekty. Zakłada się również, że Customer obiekty i Order są zdefiniowane.


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);
    }
}

Uwagi

Wartość SelectedImageIndex jest indeksem przechowywanym Image w przypisanej ImageListImageList do właściwości .

Uwaga

Podczas ustawiania SelectedImageIndex właściwości w czasie TreeView wykonywania uchwyt jest ponownie utworzony (zobacz Control.RecreateHandle), aby zaktualizować wygląd kontrolki. Powoduje to zwinięcie wszystkich węzłów drzewa z wyjątkiem wybranego TreeNodeelementu .

SelectedImageKey i SelectedImageIndex wzajemnie wykluczają się, co oznacza, że jeśli jest ustawiona, druga jest ustawiona na nieprawidłową wartość i ignorowana. Jeśli właściwość zostanie ustawiona SelectedImageKey , SelectedImageIndex właściwość zostanie automatycznie ustawiona na -1. Jeśli właściwość zostanie ustawiona SelectedImageIndex , SelectedImageKey właściwość zostanie automatycznie ustawiona na pusty ciąg ("").

Dotyczy

Produkt Wersje
.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

Zobacz też