MemberRelationshipService Klasa
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Udostępnia klasę bazową do relacji jednego elementu członkowskiego z innym.
public ref class MemberRelationshipService abstract
public abstract class MemberRelationshipService
type MemberRelationshipService = class
Public MustInherit Class MemberRelationshipService
- Dziedziczenie
-
MemberRelationshipService
Upraszcza MemberRelationshipService pobieranie wartości właściwości z innej lokalizacji. Projektant może uzyskać dostęp do tej usługi, aby określić, że jeden element członkowski ma przypisaną wartość innej. Generator kodu wyszukuje takie relacje podczas generowania kodu, a jeśli zostanie znaleziona relacja między dwoma elementami członkowskimi, emituje kod dla relacji, a nie wyszukuje wartości właściwości. Korzystając z poprzedniego przypisania tekstu jako przykładu, poniższy przykład kodu przedstawia kod czasu projektowania używany do ustanowienia relacji.
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);
Projektanci serializują się, aby kodować za pośrednictwem aparatu, który przeszukuje wartości właściwości na żywo obiektów i generuje te wartości jako kod. Na przykład tekst przycisku jest generowany w następującym formacie.
this.okButton.Text = "OK";
Jednym z ograniczeń tego schematu jest to, że trudno jest pobrać właściwość z innej lokalizacji. Na przykład bardzo trudno jest emitować kod w następującym formacie, ponieważ jedyną rzeczą, na której generator kodu może polegać, jest wartość właściwości .
this.titleLabel.Text = this.Text;
Klasa MemberRelationshipService to abstract
. Implementacja określonej wersji różni się w zależności od obsługiwanych typów elementów członkowskich. Na przykład powiązanie jednego zdarzenia z innym może wymagać innej implementacji niż powiązanie jednej właściwości z inną. Implementacja usługi wymaga następujących kroków:
Zaimplementuj SupportsRelationship(MemberRelationship, MemberRelationship) , aby wrócić
true
do relacji, które są obsługiwane.Śledź zmiany relacji źródłowej i przypisz zmiany wartości do relacji docelowej.
Member |
Inicjuje nowe wystąpienie klasy MemberRelationshipService. |
Item[Member |
Ustanawia relację między obiektem źródłowym i docelowym. |
Item[Object, Member |
Ustanawia relację między obiektem źródłowym i docelowym. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
Get |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
Get |
Pobiera relację z daną relacją źródłową. |
Get |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
Memberwise |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
Set |
Tworzy relację między obiektem źródłowym a relacją docelową. |
Supports |
Pobiera wartość wskazującą, czy dana relacja jest obsługiwana. |
To |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Produkt | Wersje |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
Opinia o produkcie .NET
.NET to projekt typu open source. Wybierz link, aby przekazać opinię: