MemberRelationshipService Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje základní třídu pro připojení jednoho člena k jinému.
public ref class MemberRelationshipService abstract
public abstract class MemberRelationshipService
type MemberRelationshipService = class
Public MustInherit Class MemberRelationshipService
- Dědičnost
-
MemberRelationshipService
Příklady
Zjednodušuje MemberRelationshipService načtení hodnoty vlastnosti z jiného umístění. Návrhář může přistupovat k této službě a diktovat, že jednomu členovi je přiřazena hodnota jiného. Generátor kódu vyhledá takové relace při generování kódu, a pokud se v generátoru kódu najde relace mezi dvěma členy, vygeneruje kód pro relaci místo hledání hodnoty vlastnosti. Při použití předchozího přiřazení textu jako příkladu následující příklad kódu ukazuje kód doby návrhu použitý k vytvoření relace.
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);
Poznámky
Návrháři se serializují do kódu prostřednictvím modulu, který vyhledává hodnoty živých vlastností objektů a generuje tyto hodnoty jako kód. Například text tlačítka se vygeneruje v následujícím formátu.
this.okButton.Text = "OK";
Jedním z omezení tohoto schématu je, že je obtížné načíst vlastnost z jiného umístění. Například je velmi obtížné generovat kód v následujícím formátu, protože jediné, na co se generátor kódu může spolehnout, je hodnota ve vlastnosti.
this.titleLabel.Text = this.Text;
Poznámky pro implementátory
Třída MemberRelationshipService je abstract
. Implementace konkrétní verze se liší v závislosti na podporovaných typech členů. Například relace jedné události s jinou může vyžadovat jinou implementaci než propojování jedné vlastnosti s jinou. Implementace služby vyžaduje následující kroky:
Implementaci SupportsRelationship(MemberRelationship, MemberRelationship) vrátíte
true
pro relace, které podporujete.Sledujte změny zdrojové relace a přiřaďte změny hodnot do cílové relace.
Konstruktory
MemberRelationshipService() |
Inicializuje novou instanci MemberRelationshipService třídy. |
Vlastnosti
Item[MemberRelationship] |
Vytvoří relaci mezi zdrojovým a cílovým objektem. |
Item[Object, MemberDescriptor] |
Vytvoří relaci mezi zdrojovým a cílovým objektem. |
Metody
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetRelationship(MemberRelationship) |
Získá relaci k dané zdrojové relaci. |
GetType() |
Získá aktuální Type instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
SetRelationship(MemberRelationship, MemberRelationship) |
Vytvoří relaci mezi zdrojovým objektem a cílovým vztahem. |
SupportsRelationship(MemberRelationship, MemberRelationship) |
Získá hodnotu označující, zda je daná relace podporována. |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |