Compartir vía


ActivityDesignerPaint Clase

Definición

Precaución

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

Proporciona los métodos estáticos utilizados para dibujar los elementos de la interfaz de usuario en superficies del diseñador de actividad. Esta clase no puede heredarse.

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
Herencia
ActivityDesignerPaint
Atributos

Ejemplos

El ejemplo siguiente muestra una manera de utilizar la clase ActivityDesignerPaint para dibujar una actividad personalizada en la superficie de diseño del flujo de trabajo. Un rectángulo redondeado se dibuja utilizando primero el método DrawRoundedRectangle. El texto se dibuja utilizando a continuación DrawText y se coloca en la ubicación de TextRectangle de ActivityDesigner. Además, el Image asociado a ActivityDesigner se dibuja utilizando el método DrawImage de la clase ActivityDesignerPaint. Finalmente, se dibuja un botón de expansión utilizado por CompositeActivity utilizando DrawExpandButton.

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

Comentarios

Nota

En esta documentación se describen los tipos y espacios de nombres que están obsoletos. Para obtener más información, vea Tipos en desuso en Windows Workflow Foundation 4.5.

Métodos

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

Dibuja un botón tridimensional en la superficie del diseñador de actividad.

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

Dibuja un botón que se utiliza para expandir y contraer los diseñadores compuestos en la superficie del diseñador de actividad.

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

Dibuja una imagen en la superficie del diseñador de actividad utilizando Graphics, Image, Rectangle y DesignerContentAlignment.

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

Dibuja una imagen en la superficie del diseñador de actividad utilizando Graphics, Image, un origen y un destino Rectangle, DesignerContentAlignment, un número de punto flotante de precisión sencilla y un valor booleano.

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

Dibuja un rectángulo redondeado en la superficie del diseñador de actividad.

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

Dibuja el texto en la superficie del diseñador de actividad.

GetRoundedRectanglePath(Rectangle, Int32)
Obsoletos.

Devuelve la ruta de acceso de los gráficos utilizada para dibujar el rectángulo redondeado especificado.

Se aplica a