Freigeben über


VisualStyleRenderer.DrawBackground Methode

Definition

Zeichnet das Hintergrundbild des aktuellen visuellen Stilelements.

Überlädt

DrawBackground(IDeviceContext, Rectangle)

Zeichnet das Hintergrundbild des aktuellen visuellen Stilelements innerhalb des angegebenen umschließenden Rechtecks.

DrawBackground(IDeviceContext, Rectangle, Rectangle)

Zeichnet das Hintergrundbild des aktuellen visuellen Stilelements innerhalb des angegebenen umschließenden Rechtecks und eingegrenzt auf das Auswahlrechteck.

DrawBackground(IDeviceContext, Rectangle)

Zeichnet das Hintergrundbild des aktuellen visuellen Stilelements innerhalb des angegebenen umschließenden Rechtecks.

public:
 void DrawBackground(System::Drawing::IDeviceContext ^ dc, System::Drawing::Rectangle bounds);
public void DrawBackground (System.Drawing.IDeviceContext dc, System.Drawing.Rectangle bounds);
member this.DrawBackground : System.Drawing.IDeviceContext * System.Drawing.Rectangle -> unit
Public Sub DrawBackground (dc As IDeviceContext, bounds As Rectangle)

Parameter

dc
IDeviceContext

Der zum Zeichnen des Hintergrundbilds verwendete IDeviceContext.

bounds
Rectangle

Ein Rectangle, in dem das Hintergrundbild gezeichnet wird.

Ausnahmen

dc ist null.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Sie die DrawBackground(IDeviceContext, Rectangle) -Methode verwenden, um eine VisualStyleElement in der Methode eines benutzerdefinierten Steuerelements OnPaint zu zeichnen. Dieses Codebeispiel ist Teil eines größeren Beispiels für die VisualStyleRenderer Klassenübersicht.

protected:
    virtual void OnPaint(PaintEventArgs^ e) override
    {
        __super::OnPaint(e);

        // Ensure that visual styles are supported.
        if (!Application::RenderWithVisualStyles)
        {
            this->Text = "Visual styles are not enabled.";
            TextRenderer::DrawText(e->Graphics, this->Text,
                this->Font, this->Location, this->ForeColor);
            return;
        }

        // Set the clip region to define the curved corners
        // of the caption.
        SetClipRegion();

        // Draw each part of the window.
        for each(KeyValuePair<String^, VisualStyleElement^>^ entry
            in windowElements)
        {
            if (SetRenderer(entry->Value))
            {
                renderer->DrawBackground(e->Graphics,
                    elementRectangles[entry->Key]);
            }
        }

        // Draw the caption text.
        TextRenderer::DrawText(e->Graphics, this->Text, this->Font,
            elementRectangles["windowCaption"], Color::White,
            TextFormatFlags::VerticalCenter |
            TextFormatFlags::HorizontalCenter);
    }
protected override void OnPaint(PaintEventArgs e)
{
    base.OnPaint(e);

    // Ensure that visual styles are supported.
    if (!Application.RenderWithVisualStyles)
    {
        this.Text = "Visual styles are not enabled.";
        TextRenderer.DrawText(e.Graphics, this.Text,
            this.Font, this.Location, this.ForeColor);
        return;
    }

    // Set the clip region to define the curved corners 
    // of the caption.
    SetClipRegion();

    // Draw each part of the window.
    foreach (KeyValuePair<string, VisualStyleElement> entry
        in windowElements)
    {
        if (SetRenderer(entry.Value))
        {
            renderer.DrawBackground(e.Graphics,
                elementRectangles[entry.Key]);
        }
    }

    // Draw the caption text.
    TextRenderer.DrawText(e.Graphics, this.Text, this.Font,
        elementRectangles["windowCaption"], Color.White,
        TextFormatFlags.VerticalCenter |
        TextFormatFlags.HorizontalCenter);
}
Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
    MyBase.OnPaint(e)

    ' Ensure that visual styles are supported.
    If Not Application.RenderWithVisualStyles Then
        Me.Text = "Visual styles are not enabled."
        TextRenderer.DrawText(e.Graphics, Me.Text, Me.Font, _
            Me.Location, Me.ForeColor)
        Return
    End If

    ' Set the clip region to define the curved corners of 
    ' the caption.
    SetClipRegion()

    ' Draw each part of the window.
    Dim entry As KeyValuePair(Of String, VisualStyleElement)
    For Each entry In windowElements
        If SetRenderer(entry.Value) Then
            renderer.DrawBackground(e.Graphics, _
                elementRectangles(entry.Key))
        End If
    Next entry

    ' Draw the caption text.
    TextRenderer.DrawText(e.Graphics, Me.Text, Me.Font, _
        elementRectangles("windowCaption"), Color.White, _
        TextFormatFlags.VerticalCenter Or _
        TextFormatFlags.HorizontalCenter)
End Sub

Hinweise

Diese Methode zeichnet den Hintergrund des aktuellen visuellen Stilelements, das durch die ClassEigenschaften , Partund State angegeben wird.

Wenn das Width oder Height des durch den bounds Parameter angegebenen Rechtecks kleiner als 0 ist, gibt die DrawBackground Methode zurück, ohne den Hintergrund zu zeichnen.

Der Hintergrund eines visuellen Stilelements kann eine Bitmapdatei oder ein gefüllter Rahmen sein. Um den Hintergrundtyp zu bestimmen, rufen Sie die GetEnumValue -Methode mit dem Argumentwert auf EnumProperty.BackgroundType. Um zu bestimmen, ob der Elementhintergrund an die angegebenen Grenzen skaliert wird, rufen Sie die -Methode mit dem GetEnumValue Argumentwert von auf EnumProperty.SizingType.

Gilt für:

DrawBackground(IDeviceContext, Rectangle, Rectangle)

Zeichnet das Hintergrundbild des aktuellen visuellen Stilelements innerhalb des angegebenen umschließenden Rechtecks und eingegrenzt auf das Auswahlrechteck.

public:
 void DrawBackground(System::Drawing::IDeviceContext ^ dc, System::Drawing::Rectangle bounds, System::Drawing::Rectangle clipRectangle);
public void DrawBackground (System.Drawing.IDeviceContext dc, System.Drawing.Rectangle bounds, System.Drawing.Rectangle clipRectangle);
member this.DrawBackground : System.Drawing.IDeviceContext * System.Drawing.Rectangle * System.Drawing.Rectangle -> unit
Public Sub DrawBackground (dc As IDeviceContext, bounds As Rectangle, clipRectangle As Rectangle)

Parameter

dc
IDeviceContext

Der zum Zeichnen des Hintergrundbilds verwendete IDeviceContext.

bounds
Rectangle

Ein Rectangle, in dem das Hintergrundbild gezeichnet wird.

clipRectangle
Rectangle

Ein Rectangle, das ein Auswahlrechteck für den Zeichenvorgang definiert.

Ausnahmen

dc ist null.

Hinweise

Diese Methode zeichnet den Hintergrund des aktuellen visuellen Stilelements, das durch die ClassEigenschaften , Partund State angegeben wird. Der Hintergrund wird auf den durch den clipRectangle Parameter angegebenen Bereich zugeschnitten.

Wenn das Width oder Height des durch den bounds Parameter oder clipRectangle angegebenen Rechtecks kleiner als 0 ist, gibt die DrawBackground Methode zurück, ohne den Hintergrund zu zeichnen.

Der Hintergrund eines visuellen Stilelements kann eine Bitmapdatei oder ein gefüllter Rahmen sein. Um den Hintergrundtyp zu bestimmen, rufen Sie die GetEnumValue -Methode mit dem Argumentwert auf EnumProperty.BackgroundType. Um zu bestimmen, ob der Elementhintergrund an die angegebenen Grenzen skaliert wird, rufen Sie die -Methode mit dem GetEnumValue Argumentwert von auf EnumProperty.SizingType.

Gilt für: