DesignerGlyph.OnActivate(ActivityDesigner) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Označuje pro glyf, že byla provedena akce, která aktivovala glyf.
protected:
virtual void OnActivate(System::Workflow::ComponentModel::Design::ActivityDesigner ^ designer);
protected virtual void OnActivate (System.Workflow.ComponentModel.Design.ActivityDesigner designer);
abstract member OnActivate : System.Workflow.ComponentModel.Design.ActivityDesigner -> unit
override this.OnActivate : System.Workflow.ComponentModel.Design.ActivityDesigner -> unit
Protected Overridable Sub OnActivate (designer As ActivityDesigner)
Parametry
- designer
- ActivityDesigner
Na ActivityDesigner kterém je nakreslen glyf.
Příklady
Následující příklad ukazuje implementaci OnActivate metody. Tento příklad je z ukázky sady SDK návrháře profilů sledování. Další informace najdete v tématu Ukázka návrháře sledovacích profilů.
/// <summary>
/// This glyph shows that the activity's track point is not correctly configured
/// </summary>
internal sealed class ErrorActivityGlyph : DesignerGlyph
{
static Bitmap image = Resources.error;
string errorMessage;
internal ErrorActivityGlyph(string errorMessage)
{
this.errorMessage = errorMessage;
}
public override bool CanBeActivated
{
get
{
return true;
}
}
/// <summary>
/// Display an error message when this glyph is clicked
/// </summary>
/// <param name="designer"></param>
protected override void OnActivate(ActivityDesigner designer)
{
MessageBox.Show(errorMessage);
}
public override Rectangle GetBounds(ActivityDesigner designer, bool activated)
{
Rectangle imageBounds = new Rectangle();
if (image != null)
{
imageBounds.Size = image.Size;
imageBounds.Location = new Point(designer.Bounds.Right - imageBounds.Size.Width / 4, designer.Bounds.Top - imageBounds.Size.Height / 2);
}
return imageBounds;
}
protected override void OnPaint(Graphics graphics, bool activated, AmbientTheme ambientTheme, ActivityDesigner designer)
{
image.MakeTransparent(Color.FromArgb(255, 255, 255));
if (image != null)
{
graphics.DrawImage(image, GetBounds(designer, activated), new Rectangle(Point.Empty, image.Size), GraphicsUnit.Pixel);
}
}
}
' This glyph shows that the activity's track point is not correctly configured
Friend NotInheritable Class ErrorActivityGlyph
Inherits DesignerGlyph
Shared image As Bitmap = Resources.errorIcon
Dim errorMessage As String
Friend Sub New(ByVal errorMessage As String)
Me.errorMessage = errorMessage
End Sub
Public Overrides ReadOnly Property CanBeActivated() As Boolean
Get
Return True
End Get
End Property
' Display an error message when this glyph is clicked
Protected Overrides Sub OnActivate(ByVal designer As ActivityDesigner)
MessageBox.Show(errorMessage)
End Sub
Public Overrides Function GetBounds(ByVal designer As ActivityDesigner, ByVal activated As Boolean) As Rectangle
Dim imageBounds As New Rectangle()
If image IsNot Nothing Then
imageBounds.Size = image.Size
imageBounds.Location = New Point(designer.Bounds.Right - imageBounds.Size.Width / 4, designer.Bounds.Top - imageBounds.Size.Height / 2)
End If
Return imageBounds
End Function
Protected Overrides Sub OnPaint(ByVal graphics As Graphics, ByVal activated As Boolean, ByVal ambientTheme As AmbientTheme, ByVal designer As ActivityDesigner)
image.MakeTransparent(Color.FromArgb(255, 255, 255))
If image IsNot Nothing Then
graphics.DrawImage(image, GetBounds(designer, activated), New Rectangle(Point.Empty, image.Size), GraphicsUnit.Pixel)
End If
End Sub
End Class
Platí pro
Spolupracujte s námi na GitHubu
Zdroj tohoto obsahu najdete na GitHubu, kde můžete také vytvářet a kontrolovat problémy a žádosti o přijetí změn. Další informace najdete v našem průvodci pro přispěvatele.