Label.ImageIndex Proprietà

Definizione

Ottiene o imposta il valore di indice dell'immagine visualizzata nell'oggetto Label.

public:
 property int ImageIndex { int get(); void set(int value); };
[System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.ImageIndexConverter))]
public int ImageIndex { get; set; }
[<System.ComponentModel.TypeConverter(typeof(System.Windows.Forms.ImageIndexConverter))>]
member this.ImageIndex : int with get, set
Public Property ImageIndex As Integer

Valore della proprietà

Indice in base zero che rappresenta la posizione nel controllo ImageList, assegnato alla proprietà ImageList, in cui viene disposta l'immagine. Il valore predefinito è -1.

Attributi

Eccezioni

value è minore di -1.

Esempio

Nell'esempio di codice seguente viene illustrato come creare un Label controllo con un bordo tridimensionale e un'immagine visualizzata usando le ImageList proprietà e ImageIndex . Il controllo ha anche una didascalia con un carattere mnemonico specificato. Nel codice di esempio vengono utilizzate le PreferredHeight proprietà e PreferredWidth per ridimensionare correttamente il Label controllo nel form in cui viene visualizzato. In questo esempio è necessario che ImageList sia stato creato e denominato imageList1 e che siano state caricate due immagini. L'esempio richiede inoltre che il codice si trova all'interno di un modulo con lo System.Drawing spazio dei nomi aggiunto al codice.

public:
   void CreateMyLabel()
   {
      // Create an instance of a Label.
      Label^ label1 = gcnew Label;
      
      // Set the border to a three-dimensional border.
      label1->BorderStyle = System::Windows::Forms::BorderStyle::Fixed3D;
      // Set the ImageList to use for displaying an image.
      label1->ImageList = imageList1;
      // Use the second image in imageList1.
      label1->ImageIndex = 1;
      // Align the image to the top left corner.
      label1->ImageAlign = ContentAlignment::TopLeft;
      
      // Specify that the text can display mnemonic characters.
      label1->UseMnemonic = true;
      // Set the text of the control and specify a mnemonic character.
      label1->Text = "First &Name:";
      
      /* Set the size of the control based on the PreferredHeight and PreferredWidth values. */
      label1->Size = System::Drawing::Size( label1->PreferredWidth, label1->PreferredHeight );
      
      //...Code to add the control to the form...
   }
public void CreateMyLabel()
{
   // Create an instance of a Label.
   Label label1 = new Label();

   // Set the border to a three-dimensional border.
   label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
   // Set the ImageList to use for displaying an image.
   label1.ImageList = imageList1;
   // Use the second image in imageList1.
   label1.ImageIndex = 1;
   // Align the image to the top left corner.
   label1.ImageAlign = ContentAlignment.TopLeft;

   // Specify that the text can display mnemonic characters.
   label1.UseMnemonic = true;
   // Set the text of the control and specify a mnemonic character.
   label1.Text = "First &Name:";
   
   /* Set the size of the control based on the PreferredHeight and PreferredWidth values. */
   label1.Size = new Size (label1.PreferredWidth, label1.PreferredHeight);

   //...Code to add the control to the form...
}
Public Sub CreateMyLabel()
    ' Create an instance of a Label.
    Dim label1 As New Label()
       
    ' Set the border to a three-dimensional border.
    label1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D
    ' Set the ImageList to use for displaying an image.
    label1.ImageList = imageList1
    ' Use the second image in imageList1.
    label1.ImageIndex = 1
    ' Align the image to the top left corner.
    label1.ImageAlign = ContentAlignment.TopLeft
     
    ' Specify that the text can display mnemonic characters.
    label1.UseMnemonic = True
    ' Set the text of the control and specify a mnemonic character.
    label1.Text = "First &Name:"
       
    ' Set the size of the control based on the PreferredHeight and PreferredWidth values. 
    label1.Size = New Size(label1.PreferredWidth, label1.PreferredHeight)

    '...Code to add the control to the form...
End Sub

Commenti

Le ImageIndex proprietà e ImageList non possono essere utilizzate contemporaneamente alla Image proprietà . Quando la ImageIndex proprietà e ImageList le proprietà vengono usate per visualizzare un'immagine, la Image proprietà viene impostata automaticamente su null.

ImageKey e si escludono ImageIndex a vicenda, ovvero se ne è impostata una, l'altra è impostata su un valore non valido e ignorata. Se si imposta la ImageKey proprietà , la ImageIndex proprietà viene impostata automaticamente su -1. In alternativa, se si imposta la ImageIndex proprietà , l'oggetto ImageKey viene impostato automaticamente su una stringa vuota ("").

Se il valore della ImageList proprietà viene modificato in null, la proprietà restituisce il ImageIndex valore predefinito- -1. Tuttavia, il valore assegnato ImageIndex viene mantenuto internamente e usato quando un altro ImageList oggetto viene assegnato alla ImageList proprietà . Se il nuovo ImageList assegnato alla ImageList proprietà ha un ImageList.ImageCollection.Count valore della proprietà minore o uguale al valore assegnato alla ImageIndex proprietà meno uno (per tenere conto che l'insieme è un indice in base zero), il valore della ImageIndex proprietà viene modificato in un valore minore del valore della Count proprietà. Si consideri ad esempio un controllo pulsante con ImageList tre immagini e la cui ImageIndex proprietà è impostata su 2. Se al ImageList pulsante vengono assegnate solo due immagini, il ImageIndex valore viene modificato in 1.

Si applica a

Vedi anche