ToolStripRenderer.OnRenderToolStripBackground 方法

定義

引發 RenderToolStripBackground 事件。

C#
protected virtual void OnRenderToolStripBackground(System.Windows.Forms.ToolStripRenderEventArgs e);

參數

e
ToolStripRenderEventArgs

ToolStripRenderEventArgs,其中包含事件資料。

範例

下列程式碼範例示範如何覆寫 OnRenderToolStripBackground 方法,以在控制項的背景 ToolStrip 中繪製漸層。 此程式碼範例是提供給 類別之較大範例的 ToolStripRenderer 一部分。

C#
// 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);
}

備註

引發事件會透過委派叫用此事件處理常式。 如需詳細資訊,請參閱 處理和引發事件

OnRenderToolStripBackground 方法也允許衍生類別處理事件,而不用附加委派。 這是在衍生類別中處理事件的慣用技巧。

給繼承者的注意事項

當在衍生類別中覆寫 OnRenderToolStripBackground(ToolStripRenderEventArgs) 時,請確定呼叫基底類別的 OnRenderToolStripBackground(ToolStripRenderEventArgs) 方法,使已註冊的委派能接收到事件。

適用於

產品 版本
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

另請參閱