DrawItemEventArgs Classe

Définition

Fournit des données pour l'événement DrawItem.

public ref class DrawItemEventArgs : EventArgs
public ref class DrawItemEventArgs : EventArgs, IDisposable, System::Drawing::IDeviceContext
public class DrawItemEventArgs : EventArgs
public class DrawItemEventArgs : EventArgs, IDisposable, System.Drawing.IDeviceContext
type DrawItemEventArgs = class
    inherit EventArgs
type DrawItemEventArgs = class
    inherit EventArgs
    interface IDisposable
    interface IDeviceContext
Public Class DrawItemEventArgs
Inherits EventArgs
Public Class DrawItemEventArgs
Inherits EventArgs
Implements IDeviceContext, IDisposable
Héritage
DrawItemEventArgs
Dérivé
Implémente

Exemples

L’exemple suivant montre comment créer des éléments dessinés par ListBox le propriétaire. Le code utilise la DrawMode propriété pour spécifier que les éléments dessinés sont de taille fixe et l’événement DrawItem pour effectuer le dessin de chaque élément dans le ListBox. L’exemple de code utilise les propriétés et les méthodes de la DrawItemEventArgs classe passées 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 l’événement DrawItem est géré par le gestionnaire d’événements défini dans l’exemple de code. L’exemple suppose également que des éléments ont été ajoutés à avec ListBox le texte « Apple », « Orange » et « Plum » 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();
}
Private WithEvents ListBox1 As New ListBox()

Private Sub 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
    Controls.Add(ListBox1)

End Sub

Private Sub ListBox1_DrawItem(ByVal sender As Object, _
 ByVal e As System.Windows.Forms.DrawItemEventArgs) _
 Handles ListBox1.DrawItem

    ' Draw the background of the ListBox control for each item.
    e.DrawBackground()

    ' Define the default color of the brush as black.
    Dim myBrush As Brush = Brushes.Black

    ' Determine the color of the brush to draw each item based on   
    ' the index of the item to draw.
    Select Case e.Index
        Case 0
            myBrush = Brushes.Red
        Case 1
            myBrush = Brushes.Orange
        Case 2
            myBrush = Brushes.Purple
    End Select

    ' 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()
End Sub

Remarques

L’événement DrawItem est déclenché par les contrôles de dessin du propriétaire, tels que les ListBox contrôles et ComboBox . Il contient toutes les informations nécessaires à l’utilisateur pour peindre l’élément spécifié, y compris l’index de l’élément, le Rectangleet le Graphics sur lequel le dessin doit être effectué.

Constructeurs

DrawItemEventArgs(Graphics, Font, Rectangle, Int32, DrawItemState)

Initialise une nouvelle instance de la classe DrawItemEventArgs pour le contrôle spécifié avec la police spécifiée, l'état, la surface sur laquelle dessiner et les limites à l'intérieur desquelles dessiner.

DrawItemEventArgs(Graphics, Font, Rectangle, Int32, DrawItemState, Color, Color)

Initialise une nouvelle instance de la classe DrawItemEventArgs pour le contrôle spécifié avec la police spécifiée, l'état, la couleur de premier plan, la couleur d'arrière-plan, la surface sur laquelle dessiner et les limites à l'intérieur desquelles dessiner.

Propriétés

BackColor

Obtient la couleur d'arrière-plan de l'élément qui est en train d'être dessiné.

Bounds

Obtient le rectangle qui représente les limites de l'élément qui est en train d'être dessiné.

Font

Obtient la police assignée à l'élément qui est en train d'être dessiné.

ForeColor

Obtient la couleur de premier plan de l'élément qui est en train d'être dessiné.

Graphics

Obtient la surface graphique sur laquelle dessiner l'élément.

Index

Obtient la valeur d'index de l'élément qui est en train d'être dessiné.

State

Obtient l'état de l'élément qui est en train d'être dessiné.

Méthodes

Dispose()

Exécute les tâches définies par l'application associées à la libération ou à la redéfinition des ressources non managées.

Dispose(Boolean)

Fournit des données pour l'événement DrawItem.

DrawBackground()

Dessine l'arrière-plan dans les limites spécifiées dans le constructeur DrawItemEventArgs avec la couleur appropriée.

DrawFocusRectangle()

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

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

IDeviceContext.GetHdc()

Retourne le handle d'un contexte de périphérique Windows.

IDeviceContext.ReleaseHdc()

Libère le handle d'un contexte de périphérique Windows.

S’applique à

Voir aussi