CompositeActivityDesigner.InsertActivities 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将活动插入设计器。
重载
InsertActivities(HitTestInfo, ReadOnlyCollection<Activity>) |
将指定活动插入设计器中的指定位置。 |
InsertActivities(CompositeActivityDesigner, HitTestInfo, ReadOnlyCollection<Activity>, String) |
使用事务将活动插入设计器中的指定位置。 |
InsertActivities(HitTestInfo, ReadOnlyCollection<Activity>)
将指定活动插入设计器中的指定位置。
public:
virtual void InsertActivities(System::Workflow::ComponentModel::Design::HitTestInfo ^ insertLocation, System::Collections::ObjectModel::ReadOnlyCollection<System::Workflow::ComponentModel::Activity ^> ^ activitiesToInsert);
public virtual void InsertActivities (System.Workflow.ComponentModel.Design.HitTestInfo insertLocation, System.Collections.ObjectModel.ReadOnlyCollection<System.Workflow.ComponentModel.Activity> activitiesToInsert);
abstract member InsertActivities : System.Workflow.ComponentModel.Design.HitTestInfo * System.Collections.ObjectModel.ReadOnlyCollection<System.Workflow.ComponentModel.Activity> -> unit
override this.InsertActivities : System.Workflow.ComponentModel.Design.HitTestInfo * System.Collections.ObjectModel.ReadOnlyCollection<System.Workflow.ComponentModel.Activity> -> unit
Public Overridable Sub InsertActivities (insertLocation As HitTestInfo, activitiesToInsert As ReadOnlyCollection(Of Activity))
参数
- insertLocation
- HitTestInfo
设计器中要插入活动的位置。
- activitiesToInsert
- ReadOnlyCollection<Activity>
要插入的活动的列表。
注解
使用 InsertActivities 可将一系列活动插入指定位置。
调用 InsertActivities 之前,使用 CanInsertActivities 可确保可以插入指定的活动。
适用于
InsertActivities(CompositeActivityDesigner, HitTestInfo, ReadOnlyCollection<Activity>, String)
使用事务将活动插入设计器中的指定位置。
public:
static void InsertActivities(System::Workflow::ComponentModel::Design::CompositeActivityDesigner ^ compositeActivityDesigner, System::Workflow::ComponentModel::Design::HitTestInfo ^ insertLocation, System::Collections::ObjectModel::ReadOnlyCollection<System::Workflow::ComponentModel::Activity ^> ^ activitiesToInsert, System::String ^ undoTransactionDescription);
public static void InsertActivities (System.Workflow.ComponentModel.Design.CompositeActivityDesigner compositeActivityDesigner, System.Workflow.ComponentModel.Design.HitTestInfo insertLocation, System.Collections.ObjectModel.ReadOnlyCollection<System.Workflow.ComponentModel.Activity> activitiesToInsert, string undoTransactionDescription);
static member InsertActivities : System.Workflow.ComponentModel.Design.CompositeActivityDesigner * System.Workflow.ComponentModel.Design.HitTestInfo * System.Collections.ObjectModel.ReadOnlyCollection<System.Workflow.ComponentModel.Activity> * string -> unit
Public Shared Sub InsertActivities (compositeActivityDesigner As CompositeActivityDesigner, insertLocation As HitTestInfo, activitiesToInsert As ReadOnlyCollection(Of Activity), undoTransactionDescription As String)
参数
- compositeActivityDesigner
- CompositeActivityDesigner
将插入活动的设计器。
- insertLocation
- HitTestInfo
设计器中将插入活动的位置。
- activitiesToInsert
- ReadOnlyCollection<Activity>
要插入的活动的列表。
- undoTransactionDescription
- String
由插入操作创建的设计器事务的说明。
示例
下面的示例演示如何使用 CompositeActivityDesigner 类的基于设计器的中断来添加新的分支。 如果 CanInsertActivities 返回 true,则使用 InsertActivities 方法创建一个新分支。
protected override CompositeActivity OnCreateNewBranch()
{
return new ParallelIfBranch();
}
private void OnAddBranch(object sender, EventArgs e)
{
CompositeActivity activity1 = this.OnCreateNewBranch();
CompositeActivity activity2 = base.Activity as CompositeActivity;
if ((activity2 != null) && (activity1 != null))
{
int num1 = this.ContainedDesigners.Count;
Activity[] activityArray1 = new Activity[] { activity1 };
if (CanInsertActivities(new ConnectorHitTestInfo(this, HitTestLocations.Designer, activity2.Activities.Count),
new List<Activity>(activityArray1).AsReadOnly()))
{
CompositeActivityDesigner.InsertActivities(this,
new ConnectorHitTestInfo(this, HitTestLocations.Designer, activity2.Activities.Count),
new List<Activity>(activityArray1).AsReadOnly(),
string.Format("Adding branch {0}", activity1.GetType().Name));
if ((this.ContainedDesigners.Count > num1) && (this.ContainedDesigners.Count > 0))
{
this.ContainedDesigners[this.ContainedDesigners.Count - 1].EnsureVisible();
}
}
}
}
Protected Overrides Function OnCreateNewBranch() As CompositeActivity
Return New ParallelIfBranch()
End Function
Private Sub OnAddBranch(ByVal sender As Object, ByVal e As EventArgs)
Dim activity1 As CompositeActivity = Me.OnCreateNewBranch()
Dim activity2 As CompositeActivity = CType(MyBase.Activity, CompositeActivity)
If (activity2 IsNot Nothing) And (activity1 IsNot Nothing) Then
Dim num1 As Integer = Me.ContainedDesigners.Count
Dim activityArray1() As Activity = {activity1}
If (CanInsertActivities(New ConnectorHitTestInfo(Me, HitTestLocations.Designer, activity2.Activities.Count), _
New List(Of Activity)(activityArray1).AsReadOnly())) Then
CompositeActivityDesigner.InsertActivities(Me, _
New ConnectorHitTestInfo(Me, HitTestLocations.Designer, activity2.Activities.Count), _
New List(Of Activity)(activityArray1).AsReadOnly(), _
String.Format("Adding branch 0}", activity1.GetType().Name))
If (Me.ContainedDesigners.Count > num1) And (Me.ContainedDesigners.Count > 0) Then
Me.ContainedDesigners(Me.ContainedDesigners.Count - 1).EnsureVisible()
End If
End If
End If
End Sub
注解
使用 InsertActivities 可将一系列活动插入复合活动。
调用 InsertActivities 之前,使用 CanInsertActivities 可确保可以插入指定的一系列活动。