Freigeben über


ActivityDesignerPaint Klasse

Definition

Achtung

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

Stellt statische Methoden bereit, die verwendet werden, um Benutzeroberflächenelemente auf Aktivitätsdesigneroberflächen zu zeichnen. Diese Klasse kann nicht vererbt werden.

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
Vererbung
ActivityDesignerPaint
Attribute

Beispiele

Das folgende Beispiel zeigt, wie die ActivityDesignerPaint-Klasse verwendet werden kann, um eine benutzerdefinierte Aktivität auf der Workflowentwurfsoberfläche zu zeichnen. Zunächst wird mit der DrawRoundedRectangle-Methode ein abgerundetes Rechteck gezeichnet. Anschließend wird Text anhand von DrawText gezeichnet und an der TextRectangle-Position von ActivityDesigner platziert. Darüber hinaus wird das Image zugeordnete ActivityDesigner mithilfe der DrawImage-Methode der ActivityDesignerPaint-Klasse gezeichnet. Zum Schluss wird eine von CompositeActivity verwendete Erweiterungsschaltfläche mit DrawExpandButton gezeichnet.

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)
    {
        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

Hinweise

Hinweis

In diesem Material werden veraltete Typen und Namespaces erläutert. Weitere Informationen finden Sie unter Veraltete Typen in Windows Workflow Foundation 4.5.

Methoden

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

Zeichnet eine dreidimensionale Schaltfläche auf der Aktivitätsdesigneroberfläche.

DrawExpandButton(Graphics, Rectangle, Boolean, CompositeDesignerTheme)
Veraltet.

Zeichnet eine Schaltfläche, die verwendet wird, um zusammengesetzte Designer auf der Aktivitätsdesigneroberfläche zu erweitern und zu reduzieren.

DrawImage(Graphics, Image, Rectangle, DesignerContentAlignment)
Veraltet.

Zeichnet unter Verwendung von Graphics, Image, Rectangle und DesignerContentAlignment ein Bild auf der Aktivitätsdesigneroberfläche.

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

Zeichnet unter Verwendung von Graphics, Image, eines Quell- und Ziel-Rectangle, DesignerContentAlignment, einer Gleitkommazahl mit einfacher Genauigkeit und eines booleschen Werts ein Bild auf der Aktivitätsdesigneroberfläche.

DrawRoundedRectangle(Graphics, Pen, Rectangle, Int32)
Veraltet.

Zeichnet ein abgerundetes Rechteck auf der Aktivitätsdesigneroberfläche.

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

Zeichnet Text auf der Aktivitätsdesigneroberfläche.

GetRoundedRectanglePath(Rectangle, Int32)
Veraltet.

Gibt den Grafikpfad zurück, der zum Zeichnen des angegebenen abgerundeten Rechtecks verwendet wird.

Gilt für: