DrawItemEventArgs Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona datos para el evento 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
- Herencia
- Derivado
- Implementaciones
Ejemplos
En el ejemplo siguiente se muestra cómo crear elementos dibujados ListBox por el propietario. El código usa la DrawMode propiedad para especificar que los elementos dibujados tienen un tamaño fijo y el DrawItem evento para realizar el dibujo de cada elemento en .ListBox El código de ejemplo usa las propiedades y los métodos de la DrawItemEventArgs clase que se pasan como parámetro al controlador de eventos para dibujar los elementos. En este ejemplo se supone que se ha agregado un ListBox control denominado listBox1
a un formulario y que el controlador de eventos definido en el código de ejemplo controla el DrawItem evento. En el ejemplo también se supone que los elementos se han agregado a ListBox con el texto de "Apple", "Orange" y "Plum" en ese orden.
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 lo generan los controles de dibujo del propietario, como los ListBox controles y ComboBox . Contiene toda la información necesaria para que el usuario pinte el elemento especificado, incluido el índice del elemento, y Rectangleel en el Graphics que se debe realizar el dibujo.
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. |
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. |
Propiedades
BackColor |
Obtiene el color de fondo del elemento que se va a dibujar. |
Bounds |
Obtiene el rectángulo que representa los límites del elemento que se va a dibujar. |
Font |
Obtiene la fuente asignada al elemento que se va a dibujar. |
ForeColor |
Obtiene el color de primer plano del elemento que se va a dibujar. |
Graphics |
Obtiene la superficie gráfica donde se va a dibujar el elemento. |
Index |
Obtiene el valor de índice del elemento que se va a dibujar. |
State |
Obtiene el estado del elemento que se va a dibujar. |
Métodos
Dispose() |
Realiza tareas definidas por la aplicación asociadas a la liberación o al restablecimiento de recursos no administrados. |
Dispose(Boolean) |
Proporciona datos para el evento |
DrawBackground() |
Dibuja el fondo dentro de los límites especificados en el constructor DrawItemEventArgs y con el color apropiado. |
DrawFocusRectangle() |
Dibuja un rectángulo de foco dentro de los límites especificados en el constructor DrawItemEventArgs. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Implementaciones de interfaz explícitas
IDeviceContext.GetHdc() |
Devuelve el identificador de un contexto de dispositivo de Windows. |
IDeviceContext.ReleaseHdc() |
Libera el identificador de un contexto de dispositivo de Windows. |