共用方式為


ModelElement 類別

所有網域模型項目的基底類別。 DomainModel 中的所有的項目和連結都是這個型別的成員。

繼承階層架構

System.Object
  Microsoft.VisualStudio.Modeling.ModelElement
    Microsoft.VisualStudio.Modeling.Diagrams.PresentationElement
    Microsoft.VisualStudio.Modeling.DslDefinition.DomainElement
    Microsoft.VisualStudio.Modeling.DslDefinition.DslLibraryImport
    Microsoft.VisualStudio.Modeling.ElementLink
    Microsoft.VisualStudio.Modeling.ExtensionElement

命名空間:  Microsoft.VisualStudio.Modeling
組件:  Microsoft.VisualStudio.Modeling.Sdk.12.0 (在 Microsoft.VisualStudio.Modeling.Sdk.12.0.dll 中)

語法

'宣告
<DomainObjectIdAttribute("2b13e0d1-7959-458d-834f-2dc0769ce683")> _
Public MustInherit Class ModelElement _
    Implements IMergeElements
[DomainObjectIdAttribute("2b13e0d1-7959-458d-834f-2dc0769ce683")]
public abstract class ModelElement : IMergeElements

ModelElement 類型會公開下列成員。

建構函式

  名稱 描述
受保護的方法 ModelElement 初始化 ModelElement 類別的新執行個體。

回頁首

屬性

  名稱 描述
公用屬性 Id 取得項目的 ID。
公用屬性 IsActive 取得 IsActive 旗標,並檢查項目是否作用中。
公用屬性 IsDeleted 取得 IsDeleted 旗標,並檢查是否已從模型刪除項目。
公用屬性 IsDeleting 取得 IsDeleting 旗標,並確認是否正在從模型刪除項目。
公用屬性 Partition 取得或設定包含項目的 Partition
公用屬性 Store 取得包含項目的 Store

回頁首

方法

  名稱 描述
公用方法靜態成員 AddExtension(ModelElement, DomainClassInfo) 使用指定之網域型別新具現化的擴充功能,擴充指定的 ModelElement。如果項目已經有相同類型的擴充功能,將會擲回 InvalidOperationException。
公用方法靜態成員 AddExtension(ModelElement, ExtensionElement) 使用指定的擴充功能擴充指定的 ModelElement。如果項目已經有相同類型的擴充功能,將會擲回 InvalidOperationException。
公用方法靜態成員 AddExtension(ModelElement, Guid) 使用所識別之網域型別新具現化的擴充功能,擴充指定的 ModelElement。如果項目已經有相同類型的擴充功能,將會擲回 InvalidOperationException。
公用方法靜態成員 AddExtension(ModelElement, Type) 使用指定之型別新具現化的擴充功能,擴充指定的 ModelElement。如果項目已經有相同類型的擴充功能,將會擲回 InvalidOperationException。
公用方法靜態成員 AddExtension<T>(ModelElement) 使用特定型別新具現化的擴充功能,擴充指定的 ModelElement。如果項目已經有相同類型的擴充功能,將會擲回 InvalidOperationException。
受保護的方法 CanMerge 確認來源項目是否可以加入至這個項目。
受保護的方法 ChooseMergeTarget(ElementGroup) 選取目標項目,以接受使用者要複製、拖曳或建立的項目做為其子系。
受保護的方法 ChooseMergeTarget(ElementGroupPrototype) 選取目標項目,以接受使用者要複製、拖曳或建立的項目做為其子系。
公用方法 Copy() 在模型中建立項目的複本。
公用方法 Copy(IEnumerable<Guid>) 建立項目及其子連結和子項目的複本。
公用方法 Delete() 從模型中刪除項目。
公用方法 Delete(array<Guid[]) 從模型中刪除項目。
公用方法 Equals 判斷指定的物件是否等於目前物件。 (繼承自 Object)。
受保護的方法 Finalize 允許物件在記憶體回收進行回收之前,嘗試釋放資源並執行其他清除作業。 (繼承自 Object)。
公用方法靜態成員 GetAllExtensions 傳回可列舉項目,用於跨內嵌於指定 ModelElement 中的延伸項目樹狀結構執行強大的第一次周遊。
公用方法靜態成員 GetBaseElement 傳回指定 ModelElement 所參與的虛擬 MEL 的根目錄。
公用方法 GetDomainClass 取得這個項目最具衍生性的網域類別。
公用方法靜態成員 GetExtension(ModelElement, DomainClassInfo)
公用方法靜態成員 GetExtension(ModelElement, Guid)
公用方法靜態成員 GetExtension(ModelElement, Type) 從指定之 ModelElement 的可用延伸中取得指定之型別的 ExtensionElement。如果此項目沒有這類的擴充,將會引發 InvalidOperationException。
公用方法靜態成員 GetExtension<T>(ModelElement) 從指定之 ModelElement 的可用延伸中取得指定之型別的 ExtensionElement。如果此項目沒有這類的擴充,將會引發 InvalidOperationException。
公用方法 GetHashCode 做為預設雜湊函式。 (繼承自 Object)。
受保護的方法 GetRoleCollection<TCollection, TElement>(Guid) 取得或建立連結項目集合
受保護的方法靜態成員 GetRoleCollection<TCollection, TElement>(ModelElement, Guid) 取得或建立連結項目集合
公用方法 GetType 取得目前執行個體的 Type。 (繼承自 Object)。
公用方法靜態成員 IsExtendedBy(ModelElement, DomainClassInfo) 查詢指定的 ModelElement 目前是否為特定型別的 ExtensionElement 所擴充。
公用方法靜態成員 IsExtendedBy(ModelElement, Guid) 查詢指定的 ModelElement 目前是否為特定型別的 ExtensionElement 所擴充。
公用方法靜態成員 IsExtendedBy(ModelElement, Type) 查詢指定的 ModelElement 目前是否為特定型別的 ExtensionElement 所擴充。
受保護的方法 MemberwiseClone 建立目前 Object 的淺層複本 (Shallow Copy)。 (繼承自 Object)。
受保護的方法 MergeConfigure 允許模型項目在合併程序將其與目標項目建立關聯後立即進行本身的設定。
受保護的方法 MergeDisconnect 將來源項目與目標項目中斷連接。
受保護的方法 MergeRelate 建立這個目標項目與指定來源項目之間的關聯性。
受保護的方法 OnCopy 當已建立這個項目做為另一個項目的複本時呼叫。
受保護的方法 OnDeleted 當這個項目已從模型中刪除時呼叫。
受保護的方法 OnDeleting 當這個項目即將刪除時呼叫。
受保護的方法 OnResurrected 當這個項目已重新加回至模型時呼叫。
受保護的方法 OnRolePlayerPositionChanged 角色的位置變更時呼叫。
受保護的方法 OnRolePlayerPositionChanging 在角色扮演者位置即將變更時呼叫。
公用方法靜態成員 RemoveExtension(ModelElement, DomainClassInfo) 移除屬於特定網域型別之指定 ModelElement 的任何延伸。
公用方法靜態成員 RemoveExtension(ModelElement, ExtensionElement) 從指定 ExtensionElement 的延伸移除指定的 ExtensionElement。
公用方法靜態成員 RemoveExtension(ModelElement, Guid) 移除屬於特定型別之指定的 ModelElement 的任何延伸。
公用方法靜態成員 RemoveExtension(ModelElement, Type) 移除屬於特定型別之指定的 ModelElement 的任何延伸。
公用方法 ToString 傳回表示目前物件的字串。 (繼承自 Object)。
公用方法靜態成員 TryGetExtension(ModelElement, DomainClassInfo)
公用方法靜態成員 TryGetExtension(ModelElement, Guid)
公用方法靜態成員 TryGetExtension(ModelElement, Type)
公用方法靜態成員 TryGetExtension<T>(ModelElement) 從指定之 ModelElement 的可用延伸中取得指定之型別的 ExtensionElement。如果項目沒有這類的擴充,結果會是 null。

回頁首

擴充方法

  名稱 描述
公用擴充方法 AddExtension(Guid) 多載。 使用所識別之網域型別新具現化的擴充功能,擴充這個 ModelElement。如果項目已經有該類型的擴充功能,將會擲回 InvalidOperationException。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 AddExtension(Type) 多載。 使用指定之型別新具現化的擴充功能,擴充這個 ModelElement。如果項目已經有該類型的擴充功能,將會擲回 InvalidOperationException。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 AddExtension(DomainClassInfo) 多載。 使用指定之網域型別新具現化的擴充功能,擴充這個 ModelElement。如果項目已經有該類型的擴充功能,將會擲回 InvalidOperationException。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 AddExtension(ExtensionElement) 多載。 使用特定擴充功能擴充這個 ModelElement。如果項目已經有相同類型的擴充功能,將會擲回 InvalidOperationException。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 AddExtension<T>() 多載。 使用特定型別新具現化的擴充功能,擴充這個 ModelElement。如果項目已經有相同類型的擴充功能,將會擲回 InvalidOperationException。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 CanDelete 從模型中刪除項目。 (以 ImmutabilityExtensionMethods 定義。)
公用擴充方法 GetAllExtensions 傳回可列舉項目,用於跨內嵌於這個 ModelElement 中的延伸項目樹狀結構執行強大的第一次周遊。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 GetBaseElement 傳回指定 ModelElement 所參與的虛擬 MEL 的根目錄。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 GetExtension(Guid) 多載。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 GetExtension(Type) 多載。 從這個 ModelElement 的可用延伸中取得指定之型別的 ExtensionElement。如果此項目沒有這類的擴充,將會引發 InvalidOperationException。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 GetExtension(DomainClassInfo) 多載。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 GetExtension<T>() 多載。 從這個 ModelElement 的可用延伸中取得指定之型別的 ExtensionElement。如果此項目沒有這類的擴充,將會引發 InvalidOperationException。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 GetLocks 取得這個項目的鎖定旗標。這將會包含在內含項目之 Partition 上啟用的任何鎖定。 (以 ImmutabilityExtensionMethods 定義。)
公用擴充方法 IsExtendedBy(Guid) 多載。 查詢此 ModelElement 目前是否為特定型別的 ExtensionElement 所擴充。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 IsExtendedBy(Type) 多載。 查詢此 ModelElement 目前是否為特定型別的 ExtensionElement 所擴充。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 IsExtendedBy(DomainClassInfo) 多載。 查詢此 ModelElement 目前是否為特定型別的 ExtensionElement 所擴充。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 IsLocked 測試這個項目是否具有任何一組指定的鎖定 (以 ImmutabilityExtensionMethods 定義。)
公用擴充方法 RemoveExtension(Type) 多載。 移除屬於特定型別之此 ModelElement 的任何延伸。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 RemoveExtension(Guid) 多載。 移除屬於特定型別之指定的 ModelElement 的任何延伸。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 RemoveExtension(DomainClassInfo) 多載。 移除屬於特定型別之指定的 ModelElement 的任何延伸。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 RemoveExtension(ExtensionElement) 多載。 從此 ExtensionElement 的延伸移除指定的 ExtensionElement。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 SetLocks 設定這個項目的鎖定旗標 (以 ImmutabilityExtensionMethods 定義。)
公用擴充方法 TryGetExtension(Guid) 多載。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 TryGetExtension(Type) 多載。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 TryGetExtension(DomainClassInfo) 多載。 (以 ModelElementExtensionMethods 定義。)
公用擴充方法 TryGetExtension<T>() 多載。 從這個 ModelElement 的可用延伸中取得指定之型別的 ExtensionElement。如果此項目沒有這類的擴充,結果會是 null。 (以 ModelElementExtensionMethods 定義。)

回頁首

欄位

  名稱 描述
公用欄位靜態成員 DomainClassId 表示這個項目之網域類別的 ID。

回頁首

明確介面實作

  名稱 描述
明確介面實作私用方法 IMergeElements.CanMerge 如果這個項目可以合併原型的內容則傳回 true。
明確介面實作私用方法 IMergeElements.ChooseMergeTarget(ElementGroup)
明確介面實作私用方法 IMergeElements.ChooseMergeTarget(ElementGroupPrototype)
明確介面實作私用方法 IMergeElements.MergeConfigure
明確介面實作私用方法 IMergeElements.MergeDisconnect
明確介面實作私用方法 IMergeElements.MergeRelate

回頁首

備註

如需詳細資訊,請參閱巡覽及更新程式碼中的模型

執行緒安全

這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。不保證任何執行個體成員是安全執行緒。

請參閱

參考

Microsoft.VisualStudio.Modeling 命名空間

其他資源

規則傳播模型內的變更