ElementOperations 類別
提供在模型項目集合上作用的一般作業。
繼承階層架構
System.Object
Microsoft.VisualStudio.Modeling.ElementOperations
Microsoft.VisualStudio.Modeling.Diagrams.DesignSurfaceElementOperations
命名空間: Microsoft.VisualStudio.Modeling
組件: Microsoft.VisualStudio.Modeling.Sdk.12.0 (在 Microsoft.VisualStudio.Modeling.Sdk.12.0.dll 中)
語法
'宣告
Public Class ElementOperations
public class ElementOperations
ElementOperations 類型會公開下列成員。
建構函式
名稱 | 描述 | |
---|---|---|
![]() |
ElementOperations(IServiceProvider) | 初始化 ElementOperations 類別的新執行個體。 |
![]() |
ElementOperations(IServiceProvider, Partition) | 初始化 ElementOperations 類別的新執行個體。 |
![]() |
ElementOperations(IServiceProvider, Store) | 已過時。初始化 ElementOperations 類別的新執行個體。 |
回頁首
屬性
名稱 | 描述 | |
---|---|---|
![]() |
Partition | |
![]() |
ServiceProvider | |
![]() |
Store |
回頁首
方法
名稱 | 描述 | |
---|---|---|
![]() |
AddCustomFormat | 使用指定的 ModelElements 集合,將一個或多個自訂資料格式加入至指定的 IDataObject。 |
![]() |
AddElementGroupFormat(IDataObject, ICollection<ModelElement>, ClosureType) | 使用指定的 ModelElements 集合,將 ElementGroupPrototype 格式加入至指定的 IDataObject。這個方法會呼叫下列 3 個可覆寫的方法 (依順序) a.CreateElementGroup b.MarkRootElements c.CreateElementGroupPrototype,然後這會將建立的 ElementGroupPrototype 隱藏在資料參數中。 |
![]() |
AddElementGroupFormat(IDataObject, ICollection<ModelElement>, ClosureType, Boolean) | 使用指定的 ModelElements 集合,將 ElementGroupPrototype 格式加入至指定的 IDataObject。可以從衍生類別中呼叫來強制要求載入項目連結,以便建立模型項目的集合。 |
![]() |
CanAddCustomFormat | 傳回值,表示是否可以使用 ModelElement 集合建立自訂格式。 |
![]() |
CanAddElementGroupFormat | 傳回值,表示是否可以使用 ModelElement 集合建立 ElementGroupPrototype 格式。 |
![]() |
CanCopy(ICollection<ModelElement>) | 取得值,指出是否可以將 ModelElements 的集合複製到 IDataObject。 |
![]() |
CanCopy(ICollection<ModelElement>, ClosureType) | 取得值,指出是否可以將 ModelElements 的集合複製到 IDataObject。呼叫 CanCopyCore 以執行工作。 |
![]() |
CanCopyCore | 取得值,指出是否可以將 ModelElements 的集合複製到 IDataObject。 |
![]() |
CanDelete(ModelElement, array<Guid[]) | 查詢是否可以刪除指定的項目,考量任何適用於項目刪除關閉中之任何項目的 IMS 鎖定。 |
![]() |
CanDelete(IEnumerable<ModelElement>, array<Guid[]) | 查詢是否可以刪除指定的一組項目,考量任何適用於項目完全刪除關閉中之任何項目的 IMS 鎖定。 |
![]() |
CanMerge | 傳回值將 ElementGroupPrototype 從 IDataObject 是否可以合併 (亦即,貼上或置放) 到目標 ModelElement。 |
![]() |
CanMergeElementGroupPrototype(ModelElement, ElementGroupPrototype) | 傳回值,表示是否可執行 MergeElementGroupPrototype。 |
![]() |
CanMergeElementGroupPrototype(ModelElement, ProtoElementBase, ElementGroupPrototype) | 取得值,指出是否可以根據特定主機和項目群組原型來執行 MergeElementGroupPrototype。 |
![]() |
CanMove | 取得值,指出是否可以移動 ModelElements 集合。 |
![]() |
ChooseMergeTarget(ModelElement, ElementGroup) | 取得合併、指定的所提議 targetElement 的目標項目。根據預設,這個方法會讓目標項目有機會變更預期的目標。 |
![]() |
ChooseMergeTarget(ModelElement, ElementGroupPrototype) | 取得合併、指定的所提議 targetElement 的目標項目。這可提供 ElementOperations 變更合併的預期目標的機會。根據預設,這個方法會讓目標項目有機會變更預期的目標。 |
![]() |
Copy(IDataObject, ICollection<ModelElement>) | 以一個或多個資料格式,將 ModelElements 的集合複製到指定的 IDataObject。 |
![]() |
Copy(IDataObject, ICollection<ModelElement>, ClosureType) | 以一個或多個資料格式,將 ModelElements 的集合複製到指定的 IDataObject。 |
![]() |
Copy(IDataObject, ICollection<ModelElement>, PointF) | 以一個或多個資料格式,將 ModelElements 的集合複製到指定的 IDataObject。 |
![]() |
Copy(IDataObject, ICollection<ModelElement>, ClosureType, PointF) | 以一個或多個資料格式,將 ModelElements 的集合複製到指定的 IDataObject。 |
![]() |
CreateElementGroup | 建立 ClosureElementGroup |
![]() |
CreateElementGroupPrototype | |
![]() |
Equals | 判斷指定的物件是否等於目前物件。 (繼承自 Object)。 |
![]() |
Finalize | 允許物件在記憶體回收進行回收之前,嘗試釋放資源並執行其他清除作業。 (繼承自 Object)。 |
![]() ![]() |
GetClipboardDataObject | 如果 IDataObject 包含我們的 ElementGroupPrototype 格式,則從剪貼簿傳回 IDataObject,否則傳回 null。 |
![]() ![]() |
GetElementGroupPrototype | 從 DataObject 中取得 ElementGroupPrototype (如果有的話)。 |
![]() |
GetHashCode | 做為預設雜湊函式。 (繼承自 Object)。 |
![]() ![]() |
GetModelingToolboxItemDisplayName | 如果 IDataObject 包含 ModelingToolboxItem,這會傳回其 DisplayName,否則為 null。 |
![]() |
GetType | 取得目前執行個體的 Type。 (繼承自 Object)。 |
![]() ![]() |
IsElementGroupPrototypeFormatAvailable | 如果剪貼簿可用 ElementGroupPrototype 剪貼簿格式,則傳回 true,否則傳回 false。 |
![]() |
MarkRootElements | 標記 elementGroup 參數中的 RootElements。 |
![]() |
MemberwiseClone | 建立目前 Object 的淺層複本 (Shallow Copy)。 (繼承自 Object)。 |
![]() |
Merge | 合併 (亦即,貼上或置放) 將 ElementGroupPrototype 從 IDataObject 到目標 ModelElement。 |
![]() |
MergeElementGroup | 合併來源 ElementGroup 與指定的目標 ModelElement。 |
![]() |
MergeElementGroupPrototype | 合併來源 ElementGroupPrototype 與指定的目標 ModelElement。 |
![]() |
OnElementsReconstituted | 由 MergeElementGroupPrototype 立即在 ElementGroupPrototype 中的項目已重新建置之後,但在連接至模型的其他項目之前呼叫。 |
![]() |
OnMerged | 由 MergeElementGroupPrototype 立即在認可本機異動之前呼叫。規則會在本機異動期間排入佇列,並在異動認可時引發。本機異動包裝重新建構及連接的項目。 |
![]() |
OnMerging | 由 MergeElementGroupPrototype 立即在已重新選擇目標項目之後,但在 ElementGroupPrototype 中的項目已重新建置之前呼叫。 |
![]() |
PropagateElementGroupContextToTransaction | 將出現在項目群組中的內容散佈至目前作用中的最上層交易。 |
![]() |
ToString | 傳回表示目前物件的字串。 (繼承自 Object)。 |
回頁首
事件
名稱 | 描述 | |
---|---|---|
![]() |
ElementsReconstituted | 由 MergeElementGroupPrototype 立即在 ElementGroupPrototype 中的項目已重新建置之後,但在連接至模型的其他項目之前呼叫。 |
![]() |
Merged | 由 MergeElementGroupPrototype 立即在認可本機異動之前呼叫。規則會在本機異動期間排入佇列,並在異動認可時引發。本機異動包裝重新建構及連接的項目。 |
![]() |
Merging | 由 MergeElementGroupPrototype 立即在已重新選擇目標項目之後,但在 ElementGroupPrototype 中的項目已重新建置之前呼叫。 |
回頁首
備註
衍生自這個類別建立複製和貼上作業的自訂資料格式。 在您的類別中,覆寫 ElementOperations 會將 ElementOperations 子類別的執行個體。 您應該傳回相同的執行個體在每個呼叫。
如需詳細資訊,請參閱如何:程式複製和貼上行為 - 重新導向。
範例
using Microsoft.VisualStudio.Modeling;
using Microsoft.VisualStudio.Modeling.Diagrams;
using Microsoft.VisualStudio.Modeling.Diagrams.ExtensionEnablement;
public partial class MyDslDiagram
{
public override DesignSurfaceElementOperations ElementOperations
{
get
{
if (this.elementOperations == null)
{
this.elementOperations = new MyElementOperations(this.Store as IServiceProvider, this);
}
return this.elementOperations;
}
}
private MyElementOperations elementOperations = null;
}
public class MyElementOperations : DesignSurfaceElementOperations
{
public MyElementOperations(IServiceProvider serviceProvider, MyDslDiagram diagram)
: base(serviceProvider, diagram)
{ }
// Overridden methods follow
}
執行緒安全
這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。不保證任何執行個體成員是安全執行緒。