DrawItemEventArgs Clase

Definición

Proporciona datos para el evento DrawItem.Provides data for the DrawItem event.

public ref class DrawItemEventArgs : EventArgs
public class DrawItemEventArgs : EventArgs
type DrawItemEventArgs = class
    inherit EventArgs
Public Class DrawItemEventArgs
Inherits EventArgs
Herencia
DrawItemEventArgs
Derivado

Ejemplos

En el ejemplo siguiente se muestra cómo crear elementos dibujados ListBox por el propietario.The following example demonstrates how to create owner-drawn ListBox items. El código usa la DrawMode propiedad para especificar que los elementos dibujados tienen el tamaño fijo DrawItem y el evento para realizar el dibujo ListBoxde cada elemento en.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. El código de ejemplo utiliza las propiedades y los métodos DrawItemEventArgs de la clase que se pasa como parámetro al controlador de eventos para dibujar los elementos.The example code uses the properties and methods of the DrawItemEventArgs class passed as a parameter to the event handler to draw the items. En este ejemplo se da ListBox por supuesto que un listBox1 control denominado se ha agregado a DrawItem un formulario y que el evento se controla mediante el controlador de eventos definido en el código de ejemplo.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. En el ejemplo también se supone que los elementos se han ListBox agregado a con el texto "Apple", "Orange" y "ciruela" en ese orden.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

Comentarios

El DrawItem evento es desencadenado por controles dibujados por el propietario ListBox , ComboBox como los controles y.The DrawItem event is raised by owner draw controls, such as the ListBox and ComboBox controls. Contiene toda la información necesaria para que el usuario dibuje el elemento especificado, incluido el índice del elemento, el Rectangley el Graphics en el que se debe realizar el dibujo.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.

Constructores

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

Inicializa una nueva instancia de la clase DrawItemEventArgs para el control especificado con la fuente, el estado, la superficie en la que dibujar y los límites en los que se puede dibujar especificados.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)

Inicializa una nueva instancia de la clase DrawItemEventArgs para el control especificado con la fuente, el estado, el color de fondo y de primer plano, la superficie en la que dibujar y los límites en los que se puede dibujar especificados.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.

Propiedades

BackColor

Obtiene el color de fondo del elemento que se va a dibujar.Gets the background color of the item that is being drawn.

Bounds

Obtiene el rectángulo que representa los límites del elemento que se va a dibujar.Gets the rectangle that represents the bounds of the item that is being drawn.

Font

Obtiene la fuente asignada al elemento que se va a dibujar.Gets the font that is assigned to the item being drawn.

ForeColor

Obtiene el color de primer plano del elemento que se va a dibujar.Gets the foreground color of the of the item being drawn.

Graphics

Obtiene la superficie gráfica donde se va a dibujar el elemento.Gets the graphics surface to draw the item on.

Index

Obtiene el valor de índice del elemento que se va a dibujar.Gets the index value of the item that is being drawn.

State

Obtiene el estado del elemento que se va a dibujar.Gets the state of the item being drawn.

Métodos

DrawBackground()

Dibuja el fondo dentro de los límites especificados en el constructor DrawItemEventArgs y con el color apropiado.Draws the background within the bounds specified in the DrawItemEventArgs constructor and with the appropriate color.

DrawFocusRectangle()

Dibuja un rectángulo de foco dentro de los límites especificados en el constructor DrawItemEventArgs.Draws a focus rectangle within the bounds specified in the DrawItemEventArgs constructor.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Heredado de Object)

Se aplica a

Consulte también: