DrawItemEventArgs.Font Property


Gets the font that is assigned to the item being drawn.

Namespace:   System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public Font Font { get; }

Property Value

Type: System.Drawing.Font

The Font that is assigned to the item being drawn.

A suggested Font, usually the Font property of the parent control.

The following example demonstrates how to create owner-drawn ListBox items. The code uses the DrawMode property to specify that the items drawn are a fixed size and the DrawItem event to perform the drawing of each item into the ListBox. The example code uses the properties and methods of the DrawItemEventArgs class passed as a parameter to the event handler to draw the items. This example assumes that a ListBox control named listBox1 was added to a form and that the DrawItem event is handled by the event handler that is defined in the example code. The example also assumes that items were 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);

private void ListBox1_DrawItem(object sender, 
    System.Windows.Forms.DrawItemEventArgs e)
    // Draw the background of the ListBox control for each item.
    // 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;
        case 1:
            myBrush = Brushes.Orange;
        case 2:
            myBrush = Brushes.Purple;

    // Draw the current item text based on the current Font 
    // and the custom brush settings.
        e.Font, myBrush, e.Bounds, StringFormat.GenericDefault);
    // If the ListBox has focus, draw a focus rectangle around the selected item.

.NET Framework
Available since 1.1
Return to top