共用方式為


MemberRelationshipService 類別

定義

提供將一個成員關聯至其他成員的基底類別。

public ref class MemberRelationshipService abstract
public abstract class MemberRelationshipService
type MemberRelationshipService = class
Public MustInherit Class MemberRelationshipService
繼承
MemberRelationshipService

範例

MemberRelationshipService 簡化從另一個位置擷取屬性值。 設計工具可以存取此服務,以指定某個成員被指派另一個成員的值。 程式代碼產生器會在產生程式代碼時搜尋這類關聯性,如果找到兩個成員之間的關聯性,則會發出關聯性的程序代碼,而不是搜尋屬性值。 使用先前的文字指派作為範例,下列程式代碼範例會顯示用來建立關聯性的設計時間程序代碼。

object titleLabel, form;  
PropertyDescriptor titleLabelText = TypeDescriptor.GetProperties(titleLabel)["Text"];  
PropertyDescriptor formText = TypeDescriptor.GetProperties(form)["Text"];  
MemberRelationshipService ms = GetService(typeof(MemberRelationshipService);  
ms[titleLabel, titleLabelText] = new MemberRelationship(form, formText);  

備註

設計工具會透過引擎將本身串行化為程式代碼,以搜尋對象的即時屬性值,並將這些值產生為程序代碼。 例如,按鈕的文字會以下列格式產生。

this.okButton.Text = "OK";  

此配置的其中一個限制是很難從另一個位置擷取屬性。 例如,很難以下列格式發出程式代碼,因為程式代碼產生器唯一可以依賴的專案是 屬性中的值。

this.titleLabel.Text = this.Text;  

給實施者的注意事項

類別 MemberRelationshipServiceabstract。 實作具體版本會根據支持的成員類型而有所不同。 例如,將某個事件與另一個事件建立關聯可能需要不同的實作,而不是將某個屬性關聯到另一個屬性。 實作服務需要下列步驟:

建構函式

MemberRelationshipService()

初始化 MemberRelationshipService 類別的新執行個體。

屬性

Item[MemberRelationship]

建立來源和目標物件之間的關聯性。

Item[Object, MemberDescriptor]

建立來源和目標物件之間的關聯性。

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetRelationship(MemberRelationship)

取得至指定來源關聯性的關聯性。

GetType()

取得目前執行個體的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
SetRelationship(MemberRelationship, MemberRelationship)

建立來源物件和目標關聯性之間的關聯性。

SupportsRelationship(MemberRelationship, MemberRelationship)

取得值,指出是否支援指定的關聯性。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱