DrawItemEventArgs Klasse

Definition

Stellt Daten für das DrawItem-Ereignis bereit.Provides data for the DrawItem event.

public ref class DrawItemEventArgs : EventArgs, IDisposable, System::Drawing::IDeviceContext
public ref class DrawItemEventArgs : EventArgs
public class DrawItemEventArgs : EventArgs, IDisposable, System.Drawing.IDeviceContext
public class DrawItemEventArgs : EventArgs
type DrawItemEventArgs = class
    inherit EventArgs
    interface IDisposable
    interface IDeviceContext
type DrawItemEventArgs = class
    inherit EventArgs
Public Class DrawItemEventArgs
Inherits EventArgs
Implements IDeviceContext, IDisposable
Public Class DrawItemEventArgs
Inherits EventArgs
Vererbung
DrawItemEventArgs
Abgeleitet
Implementiert

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie vom Besitzer gezeichnete Elemente erstellt werden ListBox .The following example demonstrates how to create owner-drawn ListBox items. Der Code verwendet die DrawMode -Eigenschaft, um anzugeben, dass die gezeichneten Elemente eine festgelegte Größe aufweisen, und das- DrawItem Ereignis, das die Zeichnung der einzelnen Elemente in der ausführt ListBox .The code uses the DrawMode property to specify that the items drawn are fixed sized and the DrawItem event to perform the drawing of each item into the ListBox. Der Beispielcode verwendet die Eigenschaften und Methoden der- DrawItemEventArgs Klasse, die als Parameter an den-Ereignishandler übergeben werden, um die Elemente zu zeichnen.The example code uses the properties and methods of the DrawItemEventArgs class passed as a parameter to the event handler to draw the items. In diesem Beispiel wird davon ausgegangen, dass ein Steuerelement mit dem ListBox Namen listBox1 zu einem Formular hinzugefügt wurde und dass das DrawItem Ereignis von dem im Beispielcode definierten Ereignishandler behandelt wird.This example assumes that a ListBox control that is named listBox1 has been added to a form and that the DrawItem event is handled by the event handler defined in the example code. Im Beispiel wird auch davon ausgegangen, dass Elemente ListBox mit dem Text "Apple", "Orange" und "Plum" in dieser Reihenfolge hinzugefügt wurden.The example also assumes that items have been added to the ListBox with the text of "Apple", "Orange", and "Plum" in that order.

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

Hinweise

Das DrawItem -Ereignis wird von Steuerelementen für den Besitzer zeichnen ausgelöst, z. b. die Steuer ListBox ComboBox Elemente und.The DrawItem event is raised by owner draw controls, such as the ListBox and ComboBox controls. Sie enthält alle Informationen, die der Benutzer zum Zeichnen des angegebenen Elements benötigt, einschließlich des Element Indexes, der Rectangle und der, auf der Graphics die Zeichnung durchgeführt werden soll.It contains all the information that is needed for the user to paint the specified item, including the item index, the Rectangle, and the Graphics on which the drawing should be done.

Konstruktoren

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

Initialisiert eine neue Instanz der DrawItemEventArgs-Klasse für das angegebene Steuerelement, wobei Schriftart, Zustand, Zeichenoberfläche und Begrenzungen für den Zeichenvorgang wie angegeben festgelegt werden.Initializes a new instance of the DrawItemEventArgs class for the specified control with the specified font, state, surface to draw on, and the bounds to draw within.

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

Initialisiert eine neue Instanz der DrawItemEventArgs-Klasse für das angegebene Steuerelement, wobei Schriftart, Zustand, Vordergrundfarbe, Hintergrundfarbe, Zeichenoberfläche und Begrenzungen für den Zeichenvorgang wie angegeben festgelegt werden.Initializes a new instance of the DrawItemEventArgs class for the specified control with the specified font, state, foreground color, background color, surface to draw on, and the bounds to draw within.

Eigenschaften

BackColor

Ruft die Hintergrundfarbe des Elements ab, das gerade gezeichnet wird.Gets the background color of the item that is being drawn.

Bounds

Ruft das Rechteck ab, das die Begrenzungen des gerade gezeichneten Elements darstellt.Gets the rectangle that represents the bounds of the item that is being drawn.

Font

Ruft die Schriftart ab, die dem gerade gezeichneten Element zugewiesen ist.Gets the font that is assigned to the item being drawn.

ForeColor

Ruft die Vordergrundfarbe des Elements ab, das gerade gezeichnet wird.Gets the foreground color of the of the item being drawn.

Graphics

Ruft die Grafikoberfläche ab, auf der das Element gezeichnet werden soll.Gets the graphics surface to draw the item on.

Index

Ruft den Indexwert des Elements ab, das gerade gezeichnet wird.Gets the index value of the item that is being drawn.

State

Ruft den Zustand des Elements ab, das gerade gezeichnet wird.Gets the state of the item being drawn.

Methoden

Dispose()

Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen.Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

Dispose(Boolean)
DrawBackground()

Zeichnet den Hintergrund innerhalb der im DrawItemEventArgs-Konstruktor angegebenen Begrenzungen und mit der entsprechenden Farbe.Draws the background within the bounds specified in the DrawItemEventArgs constructor and with the appropriate color.

DrawFocusRectangle()

Zeichnet ein Fokusrechteck innerhalb der im DrawItemEventArgs-Konstruktor angegebenen Begrenzungen.Draws a focus rectangle within the bounds specified in the DrawItemEventArgs constructor.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

IDeviceContext.GetHdc()

Gibt das Handle für einen Windows-Gerätekontext zurück.Returns the handle to a Windows device context.

IDeviceContext.ReleaseHdc()

Gibt das Handle eines Windows-Gerätekontexts frei.Releases the handle of a Windows device context.

Gilt für:

Siehe auch