Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

DrawItemEventArgs.DrawFocusRectangle méthode ()

 

Date de publication : novembre 2016

Dessine un rectangle de focus dans les limites spécifiées dans le DrawItemEventArgs constructeur.

Espace de noms:   System.Windows.Forms
Assembly:  System.Windows.Forms (dans System.Windows.Forms.dll)

public virtual void DrawFocusRectangle()

Si l’élément dessiné a Focus, le rectangle de focus est dessiné.

Remarques à l’attention des héritiers :

Lors de la substitution DrawFocusRectangle dans une classe dérivée, veillez à appeler la DrawFocusRectangle méthode de la classe de base.

L’exemple suivant montre comment créer owner-drawn ListBox éléments. Le code utilise le DrawMode pour spécifier que les éléments dessinés sont de taille fixe et DrawItem événement pour exécuter le dessin de chaque élément dans le ListBox. L’exemple de code utilise les propriétés et méthodes de la DrawItemEventArgs classe passée en tant que paramètre au gestionnaire d’événements pour dessiner les éléments. Cet exemple suppose qu’un ListBox contrôle nommé listBox1 a été ajouté à un formulaire et que le DrawItem événement est géré par le Gestionnaire d’événements qui est défini dans l’exemple de code. L’exemple suppose également que des éléments ont été ajoutés à la ListBox avec le texte de « Apple », « Orange » et « Prune », dans cet ordre.

private ListBox ListBox1 = new ListBox();
private void InitializeListBox()
{
    ListBox1.Items.AddRange(new Object[] 
        { "Red Item", "Orange Item", "Purple Item" });
    ListBox1.Location = new System.Drawing.Point(81, 69);
    ListBox1.Size = new System.Drawing.Size(120, 95);
    ListBox1.DrawMode = DrawMode.OwnerDrawFixed;
    ListBox1.DrawItem += new DrawItemEventHandler(ListBox1_DrawItem);
    Controls.Add(ListBox1);
}

private void ListBox1_DrawItem(object sender, 
    System.Windows.Forms.DrawItemEventArgs e)
{
    // Draw the background of the ListBox control for each item.
    e.DrawBackground();
    // Define the default color of the brush as black.
    Brush myBrush = Brushes.Black;

    // Determine the color of the brush to draw each item based 
    // on the index of the item to draw.
    switch (e.Index)
    {
        case 0:
            myBrush = Brushes.Red;
            break;
        case 1:
            myBrush = Brushes.Orange;
            break;
        case 2:
            myBrush = Brushes.Purple;
            break;
    }

    // Draw the current item text based on the current Font 
    // and the custom brush settings.
    e.Graphics.DrawString(ListBox1.Items[e.Index].ToString(), 
        e.Font, myBrush, e.Bounds, StringFormat.GenericDefault);
    // If the ListBox has focus, draw a focus rectangle around the selected item.
    e.DrawFocusRectangle();
}

.NET Framework
Disponible depuis 1.1
Retour au début
Afficher: