ToolStripRenderer.OnRenderToolStripBackground Methode

Definition

Löst das RenderToolStripBackground-Ereignis aus.

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)

Parameter

e
ToolStripRenderEventArgs

Ein ToolStripRenderEventArgs Objekt, das die Ereignisdaten enthält.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die OnRenderToolStripBackground Methode überschreibt, um einen Farbverlauf im Hintergrund eines ToolStrip Steuerelements zu zeichnen. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die ToolStripRenderer Klasse bereitgestellt wird.

// 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

Hinweise

Das Auslösen eines Ereignisses ruft den Ereignishandler über einen Delegaten auf. Weitere Informationen finden Sie unter Behandeln und Auslösen von Ereignissen.

Mit der OnRenderToolStripBackground Methode können abgeleitete Klassen auch das Ereignis behandeln, ohne einen Delegaten anzufügen. Dies ist die bevorzugte Technik für die Behandlung des Ereignisses in einer abgeleiteten Klasse.

Hinweise für Vererber

Achten Sie beim Überschreiben OnRenderToolStripBackground(ToolStripRenderEventArgs) in einer abgeleiteten Klasse darauf, die Methode der Basisklasse OnRenderToolStripBackground(ToolStripRenderEventArgs) aufzurufen, damit registrierte Stellvertretungen das Ereignis empfangen.

Gilt für:

Weitere Informationen