ActivityDesignerPaint.DrawImage Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Desenha uma imagem na superfície do designer de atividade.
Sobrecargas
DrawImage(Graphics, Image, Rectangle, DesignerContentAlignment) |
Desenha uma imagem na superfície do designer de atividade usando um Graphics, uma Image, um Rectangle e um DesignerContentAlignment. |
DrawImage(Graphics, Image, Rectangle, Rectangle, DesignerContentAlignment, Single, Boolean) |
Desenha uma imagem na superfície do designer de atividade usando um Graphics, uma Image, um Rectangle de origem e de destino, um DesignerContentAlignment, um número de ponto flutuante de precisão simples e um valor booliano. |
DrawImage(Graphics, Image, Rectangle, DesignerContentAlignment)
Desenha uma imagem na superfície do designer de atividade usando um Graphics, uma Image, um Rectangle e um DesignerContentAlignment.
public:
static void DrawImage(System::Drawing::Graphics ^ graphics, System::Drawing::Image ^ image, System::Drawing::Rectangle destination, System::Workflow::ComponentModel::Design::DesignerContentAlignment alignment);
public static void DrawImage (System.Drawing.Graphics graphics, System.Drawing.Image image, System.Drawing.Rectangle destination, System.Workflow.ComponentModel.Design.DesignerContentAlignment alignment);
static member DrawImage : System.Drawing.Graphics * System.Drawing.Image * System.Drawing.Rectangle * System.Workflow.ComponentModel.Design.DesignerContentAlignment -> unit
Public Shared Sub DrawImage (graphics As Graphics, image As Image, destination As Rectangle, alignment As DesignerContentAlignment)
Parâmetros
- alignment
- DesignerContentAlignment
O DesignerContentAlignment que especifica como a imagem é alinhada no retângulo delimitador.
Exceções
graphics
, image
ou destination
contém uma referência nula (Nothing
no Visual Basic).
Exemplos
O exemplo a seguir demonstra uma maneira de usar a ActivityDesignerPaint classe para desenhar uma atividade personalizada na superfície de design do fluxo de trabalho. Um retângulo arredondado é desenhado pela primeira vez usando o DrawRoundedRectangle método. Em seguida, o texto é desenhado usando DrawText e é colocado no local do TextRectangle ActivityDesigner. Além disso, o Image associado ao ActivityDesigner é desenhado usando o DrawImage método da ActivityDesignerPaint classe. Por fim, um botão expandir usado por um CompositeActivity é desenhado usando o 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
Comentários
Quando você usa essa versão de , o retângulo de DrawImageorigem é definido como o tamanho, em pixels, da imagem, a configuração de transparência é definida como 1,0f e escalas de cinza de desenho não são permitidas.
Aplica-se a
DrawImage(Graphics, Image, Rectangle, Rectangle, DesignerContentAlignment, Single, Boolean)
Desenha uma imagem na superfície do designer de atividade usando um Graphics, uma Image, um Rectangle de origem e de destino, um DesignerContentAlignment, um número de ponto flutuante de precisão simples e um valor booliano.
public:
static void DrawImage(System::Drawing::Graphics ^ graphics, System::Drawing::Image ^ image, System::Drawing::Rectangle destination, System::Drawing::Rectangle source, System::Workflow::ComponentModel::Design::DesignerContentAlignment alignment, float transparency, bool grayscale);
public static void DrawImage (System.Drawing.Graphics graphics, System.Drawing.Image image, System.Drawing.Rectangle destination, System.Drawing.Rectangle source, System.Workflow.ComponentModel.Design.DesignerContentAlignment alignment, float transparency, bool grayscale);
static member DrawImage : System.Drawing.Graphics * System.Drawing.Image * System.Drawing.Rectangle * System.Drawing.Rectangle * System.Workflow.ComponentModel.Design.DesignerContentAlignment * single * bool -> unit
Public Shared Sub DrawImage (graphics As Graphics, image As Image, destination As Rectangle, source As Rectangle, alignment As DesignerContentAlignment, transparency As Single, grayscale As Boolean)
Parâmetros
- alignment
- DesignerContentAlignment
O DesignerContentAlignment que especifica como a imagem é alinhada no retângulo delimitador.
- transparency
- Single
Um número de ponto flutuante de precisão simples que define as configurações de transparência da imagem.
- grayscale
- Boolean
true
para desenhar a imagem em escalas de cinza, caso contrário, false
.
Exceções
graphics
, image
, destination
ou source
contém uma referência nula (Nothing
no Visual Basic).
- ou -
transparency
é menor que 0 ou maior que 1.0f.