ActivityDesignerPaint Třída

Definice

Upozornění

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Poskytuje statické metody používané k kreslení prvků uživatelského rozhraní na plochách návrháře aktivit. Tuto třídu nelze dědit.

public ref class ActivityDesignerPaint abstract sealed
public static class ActivityDesignerPaint
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public static class ActivityDesignerPaint
type ActivityDesignerPaint = class
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type ActivityDesignerPaint = class
Public Class ActivityDesignerPaint
Dědičnost
ActivityDesignerPaint
Atributy

Příklady

Následující příklad ukazuje způsob použití ActivityDesignerPaint třídy k kreslení vlastní aktivity na návrhové ploše pracovního postupu. Zaokrouhlený obdélník je nejprve nakreslený pomocí DrawRoundedRectangle metody. Text je pak nakreslen pomocí DrawText a je umístěn na místě TextRectangle ovládacího ActivityDesignermísta . Kromě toho je Image přidružen k objektu ActivityDesigner je vykreslen pomocí DrawImage metody ActivityDesignerPaint třídy. Nakonec se pomocí tlačítka DrawExpandButtonrozbalení, které CompositeActivity používá

private bool expanded = true;
private bool useBasePaint = false;

public bool UseBasePaint
{
    get { return this.useBasePaint; }
    set { this.useBasePaint = value; }
}

public bool Expanded
{
    get { return this.expanded; }
    set { this.expanded = value; }
}

protected override void OnPaint(ActivityDesignerPaintEventArgs e)
{
    if (this.UseBasePaint == true)
    {
        base.OnPaint(e);
        return;
    }

    DrawCustomActivity(e);
}

private void DrawCustomActivity(ActivityDesignerPaintEventArgs e)
{
    Graphics graphics = e.Graphics;

    CompositeDesignerTheme compositeDesignerTheme = (CompositeDesignerTheme)e.DesignerTheme;

    ActivityDesignerPaint.DrawRoundedRectangle(graphics, compositeDesignerTheme.BorderPen, this.Bounds, compositeDesignerTheme.BorderWidth);

    string text = this.Text;
    Rectangle textRectangle = this.TextRectangle;
    if (!string.IsNullOrEmpty(text) && !textRectangle.IsEmpty)
    {
        ActivityDesignerPaint.DrawText(graphics, compositeDesignerTheme.Font, text, textRectangle, StringAlignment.Center, e.AmbientTheme.TextQuality, compositeDesignerTheme.ForegroundBrush);
    }

    System.Drawing.Image image = this.Image;
    Rectangle imageRectangle = this.ImageRectangle;
    if (image != null && !imageRectangle.IsEmpty)
    {
        ActivityDesignerPaint.DrawImage(graphics, image, imageRectangle, DesignerContentAlignment.Fill);
    }

    ActivityDesignerPaint.DrawExpandButton(graphics,
        new Rectangle(this.Location.X, this.Location.Y, 10, 10),
        this.Expanded,
        compositeDesignerTheme);
}
Private expandedValue As Boolean = True
Private useBasePaintValue As Boolean = False

Public Property UseBasePaint() As Boolean
    Get
        Return Me.useBasePaintValue
    End Get

    Set(ByVal value As Boolean)
        Me.useBasePaintValue = value
    End Set
End Property

Public Property Expanded() As Boolean
    Get
        Return Me.expandedValue
    End Get
    Set(ByVal value As Boolean)
        Me.expandedValue = value
    End Set
End Property


Protected Overrides Sub OnPaint(ByVal e As ActivityDesignerPaintEventArgs)
    If Me.UseBasePaint = True Then
        MyBase.OnPaint(e)
        Return
    End If

    DrawCustomActivity(e)
End Sub

Private Sub DrawCustomActivity(ByVal e As ActivityDesignerPaintEventArgs)
    Dim graphics As Graphics = e.Graphics

    Dim compositeDesignerTheme As CompositeDesignerTheme = CType(e.DesignerTheme, CompositeDesignerTheme)

    ActivityDesignerPaint.DrawRoundedRectangle(graphics, compositeDesignerTheme.BorderPen, Me.Bounds, compositeDesignerTheme.BorderWidth)

    Dim text As String = Me.Text
    Dim TextRectangle As Rectangle = Me.TextRectangle
    If Not String.IsNullOrEmpty(text) And Not TextRectangle.IsEmpty Then
        ActivityDesignerPaint.DrawText(graphics, compositeDesignerTheme.Font, text, TextRectangle, StringAlignment.Center, e.AmbientTheme.TextQuality, compositeDesignerTheme.ForegroundBrush)
    End If

    Dim Image As System.Drawing.Image = Me.Image
    Dim ImageRectangle As Rectangle = Me.ImageRectangle
    If Image IsNot Nothing And Not ImageRectangle.IsEmpty Then
        ActivityDesignerPaint.DrawImage(graphics, Image, ImageRectangle, DesignerContentAlignment.Fill)
    End If

    ActivityDesignerPaint.DrawExpandButton(graphics, _
        New Rectangle(Me.Location.X, Me.Location.Y, 10, 10), _
        Me.Expanded, _
        compositeDesignerTheme)
End Sub

Poznámky

Poznámka

V tomto materiálu jsou popsané zastaralé typy a obory názvů. Další informace najdete v tématu zastaralé typy v programovací model Windows Workflow Foundation 4,5.

Metody

Draw3DButton(Graphics, Image, Rectangle, Single, ButtonState)

Nakreslí 3rozměrné tlačítko na ploše návrháře aktivit.

DrawExpandButton(Graphics, Rectangle, Boolean, CompositeDesignerTheme)

Nakreslí tlačítko, které slouží k rozbalení a sbalení složených návrhářů na ploše návrháře aktivit.

DrawImage(Graphics, Image, Rectangle, DesignerContentAlignment)

Nakreslí obrázek na ploše návrháře aktivit pomocí objektu Graphics, a Image, a RectangleDesignerContentAlignment.

DrawImage(Graphics, Image, Rectangle, Rectangle, DesignerContentAlignment, Single, Boolean)

Nakreslí obrázek na ploše návrháře aktivit pomocí Graphicshodnoty , zdroje Imagea cíle Rectangle, DesignerContentAlignmentjednopřesné číslo s plovoucí desetinou čárkou a logická hodnota.

DrawRoundedRectangle(Graphics, Pen, Rectangle, Int32)

Nakreslí zaokrouhlený obdélník na ploše návrháře aktivit.

DrawText(Graphics, Font, String, Rectangle, StringAlignment, TextQuality, Brush)

Nakreslí text na ploše návrháře aktivit.

GetRoundedRectanglePath(Rectangle, Int32)

Vrátí grafickou cestu použitou k kreslení zadaného zaobleného obdélníku.

Platí pro