DrawItemEventArgs Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia dane dla zdarzenia 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
- Dziedziczenie
- Pochodne
- Implementuje
Przykłady
W poniższym przykładzie pokazano, jak utworzyć elementy rysowane ListBox przez właściciela. Kod używa DrawMode właściwości , aby określić, że rysowane elementy mają stały rozmiar, a DrawItem zdarzenie do wykonania rysunku każdego elementu w ListBoxobiekcie . Przykładowy kod używa właściwości i metod klasy przekazanej DrawItemEventArgs jako parametr do procedury obsługi zdarzeń w celu narysowania elementów. W tym przykładzie przyjęto założenie, że kontrolka ListBox o nazwie listBox1
została dodana do formularza i że DrawItem zdarzenie jest obsługiwane przez program obsługi zdarzeń zdefiniowany w przykładowym kodzie. W przykładzie założono również, że elementy zostały dodane do ListBox elementu z tekstem "Apple", "Orange" i "Plum" w tej kolejności.
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
Uwagi
Zdarzenie DrawItem
jest wywoływane przez kontrolki rysowania właściciela, takie jak kontrolki ListBox i ComboBox . Zawiera on wszystkie informacje potrzebne użytkownikowi do malowania określonego elementu, w tym indeksu elementów, Rectanglei , Graphics na których należy wykonać rysunek.
Konstruktory
DrawItemEventArgs(Graphics, Font, Rectangle, Int32, DrawItemState) |
Inicjuje nowe wystąpienie DrawItemEventArgs klasy dla określonej kontrolki z określoną czcionką, stanem, powierzchnią do rysowania i granicami do rysowania. |
DrawItemEventArgs(Graphics, Font, Rectangle, Int32, DrawItemState, Color, Color) |
Inicjuje nowe wystąpienie DrawItemEventArgs klasy dla określonej kontrolki z określoną czcionką, stanem, kolorem pierwszego planu, kolorem tła, powierzchnią do rysowania i granicami do rysowania. |
Właściwości
BackColor |
Pobiera kolor tła elementu, który jest rysowany. |
Bounds |
Pobiera prostokąt reprezentujący granice rysowanego elementu. |
Font |
Pobiera czcionkę przypisaną do rysowanego elementu. |
ForeColor |
Pobiera kolor pierwszego planu elementu rysowanego. |
Graphics |
Pobiera powierzchnię grafiki, aby narysować element. |
Index |
Pobiera wartość indeksu elementu, który jest rysowany. |
State |
Pobiera stan rysowanego elementu. |
Metody
Dispose() |
Wykonuje zdefiniowane przez aplikację zadania skojarzone ze zwalnianiem lub resetowaniem zasobów niezarządzanych. |
Dispose(Boolean) |
Udostępnia dane dla zdarzenia |
DrawBackground() |
Rysuje tło w granicach określonych w konstruktorze DrawItemEventArgs i z odpowiednim kolorem. |
DrawFocusRectangle() |
Rysuje prostokąt fokusu w granicach określonych w konstruktorze DrawItemEventArgs . |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Jawne implementacje interfejsu
IDeviceContext.GetHdc() |
Zwraca dojście do kontekstu urządzenia z systemem Windows. |
IDeviceContext.ReleaseHdc() |
Zwalnia uchwyt kontekstu urządzenia z systemem Windows. |