Sdílet prostřednictvím


DrawItemEventArgs Třída

Definice

Poskytuje data pro událost 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
Dědičnost
DrawItemEventArgs
Odvozené
Implementuje

Příklady

Následující příklad ukazuje, jak vytvořit položky nakreslené ListBox vlastníkem. Kód používá DrawMode vlastnost k určení, že nakreslené položky mají pevnou velikost a DrawItem událost k provedení výkresu každé položky do ListBox. Ukázkový kód používá vlastnosti a metody DrawItemEventArgs třídy předané jako parametr obslužné rutině události k vykreslení položek. Tento příklad předpokládá, že ListBox ovládací prvek s názvem listBox1 byl přidán do formuláře a že DrawItem událost je zpracována obslužnou rutinou události definovanou v ukázkovém kódu. Příklad také předpokládá, že položky byly přidány do ListBox textu "Apple", "Orange" a "Plum" v tomto pořadí.

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

Poznámky

Událost DrawItem je vyvolána ovládacími prvky kreslení vlastníka, například ovládacími ListBox prvky a ComboBox ovládacími prvky. Obsahuje všechny informace potřebné pro uživatele k vykreslení zadané položky, včetně indexu položky, Rectanglea informací Graphics , na kterých má být výkres proveden.

Konstruktory

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

Inicializuje novou instanci DrawItemEventArgs třídy pro zadaný ovládací prvek se zadaným písmem, stavem, barvou popředí, barvou pozadí, povrchem pro kreslení a hranicemi, které se mají nakreslit.

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

Inicializuje novou instanci DrawItemEventArgs třídy pro zadaný ovládací prvek se zadaným písmem, stavem, povrchem pro kreslení a hranicemi, které se mají nakreslit.

Vlastnosti

Name Description
BackColor

Získá barvu pozadí položky, která je nakreslena.

Bounds

Získá obdélník, který představuje hranice položky, která je nakreslena.

Font

Získá písmo přiřazené k nakreslené položce.

ForeColor

Získá barvu popředí položky, která je nakreslena.

Graphics

Načte grafickou plochu, na kterou chcete položku nakreslit.

Index

Získá index hodnotu položky, která je nakreslena.

State

Získá stav nakreslené položky.

Metody

Name Description
Dispose()

Provádí úlohy definované aplikací související s uvolněním, uvolněním nebo resetováním nespravovaných prostředků.

Dispose(Boolean)

Poskytuje data pro událost DrawItem.

DrawBackground()

Nakreslí pozadí v mezích zadaných v konstruktoru DrawItemEventArgs a s příslušnou barvou.

DrawFocusRectangle()

Nakreslí obdélník fokusu v mezích zadaných v konstruktoru DrawItemEventArgs .

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

Name Description
IDeviceContext.GetHdc()

Vrátí popisovač kontextu zařízení s Windows.

IDeviceContext.ReleaseHdc()

Uvolní popisovač kontextu zařízení s Windows.

Platí pro

Viz také