VisualStyleRenderer.DrawBackground Methode

Definitie

Hiermee tekent u de achtergrondafbeelding van het huidige element van de visuele stijl.

Overloads

Name Description
DrawBackground(IDeviceContext, Rectangle)

Hiermee tekent u de achtergrondafbeelding van het huidige element van de visuele stijl in de opgegeven begrenzingsrechthoek.

DrawBackground(IDeviceContext, Rectangle, Rectangle)

Hiermee tekent u de achtergrondafbeelding van het huidige element van de visuele stijl in de opgegeven begrenzingsrechthoek en wordt deze geknipt naar de opgegeven rechthoek voor knippen.

DrawBackground(IDeviceContext, Rectangle)

Bron:
VisualStyleRenderer.cs
Bron:
VisualStyleRenderer.cs
Bron:
VisualStyleRenderer.cs
Bron:
VisualStyleRenderer.cs
Bron:
VisualStyleRenderer.cs

Hiermee tekent u de achtergrondafbeelding van het huidige element van de visuele stijl in de opgegeven begrenzingsrechthoek.

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)

Parameters

dc
IDeviceContext

Hiermee IDeviceContext tekent u de achtergrondafbeelding.

bounds
Rectangle

Een Rectangle afbeelding waarin de achtergrondafbeelding wordt getekend.

Uitzonderingen

dc is null.

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u de DrawBackground(IDeviceContext, Rectangle) methode gebruikt om een VisualStyleElement teken te maken binnen de methode van OnPaint een aangepast besturingselement. Dit codevoorbeeld maakt deel uit van een groter voorbeeld voor het VisualStyleRenderer klasseoverzicht.

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

Opmerkingen

Met deze methode tekent u de achtergrond van het huidige element van de visuele stijl dat is opgegeven door de Class, Parten State eigenschappen.

Als de Width of Height van de rechthoek die is opgegeven door de bounds parameter kleiner is dan 0, wordt de DrawBackground methode geretourneerd zonder de achtergrond te tekenen.

De achtergrond van een element van een visuele stijl kan een bitmapbestand of een gevulde rand zijn. Als u het achtergrondtype wilt bepalen, roept u de GetEnumValue methode aan met een argumentwaarde van EnumProperty.BackgroundType. Als u wilt bepalen of de achtergrond van het element wordt aangepast aan de opgegeven grenzen, roept u de GetEnumValue methode aan met een argumentwaarde van EnumProperty.SizingType.

Van toepassing op

DrawBackground(IDeviceContext, Rectangle, Rectangle)

Bron:
VisualStyleRenderer.cs
Bron:
VisualStyleRenderer.cs
Bron:
VisualStyleRenderer.cs
Bron:
VisualStyleRenderer.cs
Bron:
VisualStyleRenderer.cs

Hiermee tekent u de achtergrondafbeelding van het huidige element van de visuele stijl in de opgegeven begrenzingsrechthoek en wordt deze geknipt naar de opgegeven rechthoek voor knippen.

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)

Parameters

dc
IDeviceContext

Hiermee IDeviceContext tekent u de achtergrondafbeelding.

bounds
Rectangle

Een Rectangle afbeelding waarin de achtergrondafbeelding wordt getekend.

clipRectangle
Rectangle

Een Rectangle die een rechthoek voor het knippen definieert voor de tekenbewerking.

Uitzonderingen

dc is null.

Opmerkingen

Met deze methode tekent u de achtergrond van het huidige element van de visuele stijl dat is opgegeven door de Class, Parten State eigenschappen. De achtergrond wordt geknipt naar het gebied dat is opgegeven door de clipRectangle parameter.

Als de Width of Height van de rechthoek die is opgegeven door de bounds of clipRectangle parameters kleiner is dan 0, wordt de DrawBackground methode geretourneerd zonder de achtergrond te tekenen.

De achtergrond van een element van een visuele stijl kan een bitmapbestand of een gevulde rand zijn. Als u het achtergrondtype wilt bepalen, roept u de GetEnumValue methode aan met een argumentwaarde van EnumProperty.BackgroundType. Als u wilt bepalen of de achtergrond van het element wordt aangepast aan de opgegeven grenzen, roept u de GetEnumValue methode aan met een argumentwaarde van EnumProperty.SizingType.

Van toepassing op