共用方式為


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) 成員都是安全執行緒。不保證任何執行個體成員是安全執行緒。

請參閱

參考

Microsoft.VisualStudio.Modeling 命名空間