MemberRelationshipService Klas

Definitie

Biedt de basisklasse voor het koppelen van het ene lid aan het andere.

public ref class MemberRelationshipService abstract
public abstract class MemberRelationshipService
type MemberRelationshipService = class
Public MustInherit Class MemberRelationshipService
Overname
MemberRelationshipService

Voorbeelden

Dit MemberRelationshipService vereenvoudigt het ophalen van een eigenschapswaarde vanaf een andere locatie. Een ontwerper heeft toegang tot deze service om te dicteren dat aan één lid de waarde van een ander lid is toegewezen. De codegenerator zoekt naar dergelijke relaties bij het genereren van code en als er een relatie tussen twee leden wordt gevonden, verzendt deze code voor de relatie in plaats van naar de eigenschapswaarde te zoeken. Met behulp van de vorige teksttoewijzing als voorbeeld toont het volgende codevoorbeeld ontwerptijdcode die wordt gebruikt om een relatie tot stand te brengen.

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);

Opmerkingen

Ontwerpers serialiseren zichzelf om te coderen via een engine waarmee de live-eigenschapswaarden van objecten worden doorzocht en die waarden als code worden gegenereerd. De tekst van een knop wordt dus gegenereerd in de volgende indeling.

this.okButton.Text = "OK";

Een van de beperkingen van dit schema is dat het moeilijk is om een eigenschap op te halen van een andere locatie. Het is bijvoorbeeld erg moeilijk om code in de volgende indeling te verzenden, omdat het enige waar de codegenerator op kan vertrouwen, de waarde in de eigenschap is.

this.titleLabel.Text = this.Text;

Notities voor uitvoerders

De MemberRelationshipService klas is abstract. Het implementeren van een concrete versie varieert afhankelijk van de typen leden die worden ondersteund. Het is bijvoorbeeld mogelijk dat het koppelen van de ene gebeurtenis aan een andere gebeurtenis een andere implementatie vereist dan het koppelen van de ene eigenschap aan de andere. Voor het implementeren van de service zijn de volgende stappen vereist:

Constructors

Name Description
MemberRelationshipService()

Initialiseert een nieuw exemplaar van de MemberRelationshipService klasse.

Eigenschappen

Name Description
Item[MemberRelationship]

Hiermee wordt een relatie tot stand brengt tussen een bron- en doelobject.

Item[Object, MemberDescriptor]

Hiermee wordt een relatie tot stand brengt tussen een bron- en doelobject.

Methoden

Name Description
Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetRelationship(MemberRelationship)

Hiermee haalt u een relatie op met de opgegeven bronrelatie.

GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
SetRelationship(MemberRelationship, MemberRelationship)

Hiermee maakt u een relatie tussen het bronobject en de doelrelatie.

SupportsRelationship(MemberRelationship, MemberRelationship)

Hiermee wordt een waarde opgehaald die aangeeft of de opgegeven relatie wordt ondersteund.

ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Van toepassing op

Zie ook