ToolStripRenderer.OnRenderToolStripBackground(ToolStripRenderEventArgs) ToolStripRenderer.OnRenderToolStripBackground(ToolStripRenderEventArgs) ToolStripRenderer.OnRenderToolStripBackground(ToolStripRenderEventArgs) ToolStripRenderer.OnRenderToolStripBackground(ToolStripRenderEventArgs) Method

Definizione

Genera l'evento RenderToolStripBackground.Raises the RenderToolStripBackground event.

protected:
 virtual void OnRenderToolStripBackground(System::Windows::Forms::ToolStripRenderEventArgs ^ e);
protected virtual void OnRenderToolStripBackground (System.Windows.Forms.ToolStripRenderEventArgs e);
abstract member OnRenderToolStripBackground : System.Windows.Forms.ToolStripRenderEventArgs -> unit
override this.OnRenderToolStripBackground : System.Windows.Forms.ToolStripRenderEventArgs -> unit
Protected Overridable Sub OnRenderToolStripBackground (e As ToolStripRenderEventArgs)

Parametri

Esempi

Nell'esempio di codice riportato di seguito viene illustrato OnRenderToolStripBackground come eseguire l'override del metodo per disegnare una sfumatura sullo sfondo di un ToolStrip controllo.The following code example demonstrates how to override the OnRenderToolStripBackground method to paint a gradient in the background of a ToolStrip control. Questo esempio di codice fa parte di un esempio più ampio fornito ToolStripRenderer per la classe.This code example is part of a larger example provided for the ToolStripRenderer class.

// This method renders the GridStrip control's background.
protected override void OnRenderToolStripBackground(
    ToolStripRenderEventArgs e)
{
    base.OnRenderToolStripBackground(e);

    // This late initialization is a workaround. The gradient
    // depends on the bounds of the GridStrip control. The bounds 
    // are dependent on the layout engine, which hasn't fully
    // performed layout by the time the Initialize method runs.
    if (this.backgroundBrush == null)
    {
        this.backgroundBrush = new LinearGradientBrush(
           e.ToolStrip.ClientRectangle,
           SystemColors.ControlLightLight,
           SystemColors.ControlDark,
           90,
           true);
    }

    // Paint the GridStrip control's background.
    e.Graphics.FillRectangle(
        this.backgroundBrush, 
        e.AffectedBounds);
}
' This method renders the GridStrip control's background.
Protected Overrides Sub OnRenderToolStripBackground(e As ToolStripRenderEventArgs)
   MyBase.OnRenderToolStripBackground(e)
   
   ' This late initialization is a workaround. The gradient
   ' depends on the bounds of the GridStrip control. The bounds 
   ' are dependent on the layout engine, which hasn't fully
   ' performed layout by the time the Initialize method runs.
   If Me.backgroundBrush Is Nothing Then
      Me.backgroundBrush = New LinearGradientBrush(e.ToolStrip.ClientRectangle, SystemColors.ControlLightLight, SystemColors.ControlDark, 90, True)
   End If
   
   ' Paint the GridStrip control's background.
   e.Graphics.FillRectangle(Me.backgroundBrush, e.AffectedBounds)
  End Sub

Commenti

Quando viene generato un evento, il gestore dell'evento viene richiamato tramite un delegato.Raising an event invokes the event handler through a delegate. Per altre informazioni, vedere la gestione e generazione di eventi.For more information, see Handling and Raising Events.

Il metodo OnRenderToolStripBackground consente inoltre alle classi derivate di gestire l'evento senza associare un delegato.The OnRenderToolStripBackground method also allows derived classes to handle the event without attaching a delegate. È la tecnica consigliata per la gestione dell'evento in una classe derivata.This is the preferred technique for handling the event in a derived class.

Note per gli eredi

Quando si esegue l'override di OnRenderToolStripBackground(ToolStripRenderEventArgs) in una classe derivata, verificare di chiamare il metodo OnRenderToolStripBackground(ToolStripRenderEventArgs) della classe di base in modo che i delegati registrati ricevano l'evento.When overriding OnRenderToolStripBackground(ToolStripRenderEventArgs) in a derived class, be sure to call the base class's OnRenderToolStripBackground(ToolStripRenderEventArgs) method so that registered delegates receive the event.

Si applica a

Vedi anche