Esporta (0) Stampa
Espandi tutto
Espandi Riduci a icona

Metodo ToolStripItem.OnPaint

Aggiornamento: novembre 2007

Genera l'evento Paint.

Spazio dei nomi:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

protected virtual void OnPaint(
	PaintEventArgs e
)
protected void OnPaint(
	PaintEventArgs e
)
protected function OnPaint(
	e : PaintEventArgs
)

Parametri

e
Tipo: System.Windows.Forms.PaintEventArgs

Oggetto PaintEventArgs che contiene i dati dell'evento.

La generazione di un evento richiama il gestore eventi tramite un delegato. Per ulteriori informazioni, vedere Generazione di un evento.

Il metodo OnPaint consente inoltre alle classi derivate di gestire l'evento senza associare un delegato. Si tratta della tecnica più usata per la gestione dell'evento in una classe derivata.

Note per gli eredi:

Quando si esegue l'override di OnPaint in una classe derivata, assicurarsi di chiamare il metodo OnPaint della classe base in modo che i delegati registrati ricevano l'evento.

Nell'esempio di codice riportato di seguito viene illustrato come eseguire l'override del metodo OnPaint per il rendering personalizzato. Questo esempio di codice fa parte di un esempio più esaustivo fornito per la classe ToolStripItem.

// This method defines the painting behavior of the control.
// It performs the following operations:
//
// Computes the layout of the item's image and text.
// Draws the item's background image.
// Draws the item's image.
// Draws the item's text.
//
// Drawing operations are implemented in the 
// RolloverItemRenderer class.
protected override void OnPaint(PaintEventArgs e)
{
    base.OnPaint(e);

    if (this.Owner != null)
    {
        // Find the dimensions of the image and the text 
        // areas of the item. 
        this.ComputeImageAndTextLayout();

        // Draw the background. This includes drawing a highlighted 
        // border when the mouse is in the client area.
        ToolStripItemRenderEventArgs ea = new ToolStripItemRenderEventArgs(
             e.Graphics,
             this);
        this.Owner.Renderer.DrawItemBackground(ea);

        // Draw the item's image. 
        ToolStripItemImageRenderEventArgs irea =
            new ToolStripItemImageRenderEventArgs(
            e.Graphics,
            this,
            imageRect );
        this.Owner.Renderer.DrawItemImage(irea);

        // If the item is on a drop-down, give its
        // text a different highlighted color.
        Color highlightColor = 
            this.IsOnDropDown ?
            Color.Salmon : SystemColors.ControlLightLight;

        // Draw the text, and highlight it if the 
        // the rollover state is true.
        ToolStripItemTextRenderEventArgs rea =
            new ToolStripItemTextRenderEventArgs(
            e.Graphics,
            this,
            base.Text,
            textRect,
            this.rolloverValue ? highlightColor : base.ForeColor,
            base.Font,
            base.TextAlign);
        this.Owner.Renderer.DrawItemText(rea);
    }
}


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition , Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

.NET Framework

Supportato in: 3.5, 3.0, 2.0

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft