XamlMember Klasa
Definicja
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 identyfikator systemu typu XAML dla elementów członkowskich typów XAML. Identyfikator jest używany przez czytniki XAML i składniki zapisywania XAML podczas przetwarzania węzłów członkowskich (gdy czytnik XAML jest umieszczony na obiekcie StartMember), a także dla ogólnej logiki systemu typów XAML.
public ref class XamlMember : IEquatable<System::Xaml::XamlMember ^>
public class XamlMember : IEquatable<System.Xaml.XamlMember>
type XamlMember = class
interface IEquatable<XamlMember>
Public Class XamlMember
Implements IEquatable(Of XamlMember)
- Dziedziczenie
-
XamlMember
- Pochodne
- Implementuje
Uwagi
XamlMember może używać trzech metodologii do zwracania informacji o elemencie członkowskim XAML: odbiciu standardowego środowiska uruchomieniowego języka wspólnego (CLR); technika odbicia tylko do odwołania wywołująca wewnętrzne interfejsy API, które używają zoptymalizowanych flag bitów; lub wywołanie wirtualnych przesłonięć interfejsu Lookup*
API udostępnianego przez możliwe XamlMember podklasy. W przypadku większości zastosowań .NET Framework interfejsów API usług XAML i interfejsu XamlMember API należy użyć domyślnego kontekstu schematu XAML. Domyślny kontekst schematu XAML dla usług .NET Framework XAML używa kopii zapasowej CLR dla systemu typów. Dzięki temu czytelnicy XAML i autorzy XAML mogą pracować z dowolnym typem lub elementem członkowskim zdefiniowanym w programie lub w inny sposób dostępnym dla środowiska CLR i jego technikami odbicia.
Interfejsy API wyszukiwania* i klasy pochodne XamlMember
XamlMember definiuje kilka wirtualnych elementów członkowskich, które klasy pochodne mogą zastąpić. Te elementy członkowskie mają nazwy, które zawsze zaczynają się od ciągu Lookup
. Pozostała część nazwy interfejsu API odwołuje się do właściwości, która ma wpływ na metodę wirtualną. Na przykład klasa pochodna XamlMember może przesłonić LookupTargetType wpływ na to, co właściwość TargetType zdefiniowana przez bazę zwraca w klasie pochodnej. Możesz przewidzieć wartości zwracane dla takich właściwości w XamlMember klasach pochodnych lub istniejących, czytając dokumentację odpowiednich Lookup*
metod.
Lookup*
Celem metod jest zapewnienie techniki rozszerzenia systemu typu XAML, która zawiera klasę bazowąXamlMember. Wyprowadzając i XamlMember przesłaniając Lookup
wirtualne elementy członkowskie, można zdefiniować koncepcję elementu członkowskiego XAML dla schematu XAML w systemie typów XAML bez powiązania ze specyfikami systemu typu zaplecza lub technologii. Możesz również użyć podanego kontekstu schematu XAML w ramach tego schematu i nadal zwracać żądane wyniki.
Rozważmy na przykład XamlMember właściwość IsWritePublic. Ta właściwość informuje obiekt wywołujący, że operacje, takie jak używanie XamlWriter elementu do serializacji, mogą zapisywać wartość dla tego elementu członkowskiego w obiekcie docelowym. W domyślnej implementacji określenie, czy element członkowski jest zapisywalny, jest używany przy użyciu technik odbicia względem zaplecza CLR Type i jego członków ().MemberInfo W związku z tym system typów XAML domyślnie zależy od systemu typów CLR. Można jednak usunąć tę zależność dla raportowania IsWritePublic systemu typów XAML przez zastąpienie interfejsu API LookupIsWritePublic. W ramach przesłonięcia można użyć innych metod określania, takich jak metadane specyficzne dla twojej technologii, podstawowa tabela odnośników zoptymalizowana pod kątem stałego słownictwa XAML lub różne inne strategie określania, czy element członkowski XAML jest zapisywalny w słowniku XAML.
Konstruowanie elementu XamlMember bez kontekstu schematu XAML
Większość konstruktorów wymaga XamlMemberXamlSchemaContext w ramach ich inicjowania. Jest XamlSchemaContext to również niezbędne w przypadku wielu operacji wewnętrznych XamlSchemaContext , takich jak uzyskiwanie informacji przekazywanych z typu zaplecza. Podczas pracy z interfejsem XamlMember API zazwyczaj masz XamlSchemaContext dostępny element z otaczającej konstrukcji, takiej jak XamlWriter. W takim przypadku można przekazać XamlSchemaContext odwołanie do wszystkich wywołań systemowych typu XAML, które wymagają kontekstu schematu XAML.
Jeden konkretny konstruktor, XamlMember(String, XamlType, Boolean), nie wymaga .XamlSchemaContext Jednak obiektXamlMember, który jest skonstruowany z podpisem XamlMember(String, XamlType, Boolean) zwraca wartość true
.IsUnknown
W przypadku ścieżki ładowania obejmującej XamlObjectWriterelement nie można zapisać takiego elementu członkowskiego w grafie obiektu. Przy użyciu implementacji XamlObjectWriter.WriteStartMember usług XAML .NET Framework wywołanie zgłasza wyjątek XamlObjectWriterException , gdy odpowiednie XamlMember raporty true
dla elementu IsUnknown.
Nie należy konstruować obiektu XamlMember , którego wartość ma wartość true
, IsUnknown chyba że implementacja może obsługiwać wyjątki z XamlObjectWriterklasy lub istnieją inne sposoby dostosowywania XamlObjectWriter zachowania. Na przykład co najmniej jedna z następujących wartości może być prawdziwa w implementacji:
- Kontekst schematu XAML jest dostępny później.
- Należy użyć wzorca wywołania elementu członkowskiego.
- Celowo zastąpisz XamlObjectWriter.WriteStartMember niestandardowy moduł zapisywania XAML.
Konstruktory
XamlMember(EventInfo, XamlSchemaContext) |
Inicjuje XamlMember nowe wystąpienie klasy przy użyciu systemu EventInfo typów CLR i klasy XamlSchemaContext. |
XamlMember(EventInfo, XamlSchemaContext, XamlMemberInvoker) |
Inicjuje XamlMember nowe wystąpienie klasy przy użyciu systemu EventInfo typów CLR i XamlSchemaContext, w tym XamlMemberInvoker informacje. |
XamlMember(PropertyInfo, XamlSchemaContext) |
Inicjuje XamlMember nowe wystąpienie klasy przy użyciu systemu PropertyInfo typów CLR i klasy XamlSchemaContext. |
XamlMember(PropertyInfo, XamlSchemaContext, XamlMemberInvoker) |
Inicjuje XamlMember nowe wystąpienie klasy przy użyciu odbicia PropertyInfo i XamlSchemaContext, w tym XamlMemberInvoker informacji. |
XamlMember(String, MethodInfo, MethodInfo, XamlSchemaContext) |
Inicjuje nowe wystąpienie XamlMember klasy, XamlMember które reprezentuje właściwość dołączalną. |
XamlMember(String, MethodInfo, MethodInfo, XamlSchemaContext, XamlMemberInvoker) |
Inicjuje XamlMember nowe wystąpienie klasy XamlMember , które reprezentuje właściwość dołączaną, w tym XamlMemberInvoker informacje. |
XamlMember(String, MethodInfo, XamlSchemaContext) |
Inicjuje XamlMember nowe wystąpienie klasy, XamlMember które reprezentuje zdarzenie dołączalne. |
XamlMember(String, MethodInfo, XamlSchemaContext, XamlMemberInvoker) |
Inicjuje nowe wystąpienie XamlMember klasy, XamlMember które reprezentuje zdarzenie możliwe do dołączenia, w tym XamlMemberInvoker informacje. |
XamlMember(String, XamlType, Boolean) |
Inicjuje XamlMember nowe wystąpienie klasy przy użyciu nazwy ciągu i deklarowania XamlType informacji. Obiekt XamlMember , który jest skonstruowany z tym podpisem, ma znaczące ograniczenia. |
Właściwości
DeclaringType |
Pobiera typ XamlType , który deklaruje element członkowski skojarzony z tym XamlMemberelementem . |
DeferringLoader |
XamlValueConverter<TConverterBase> Pobiera obiekt, który jest używany do odroczonego ładowania zadeklarowanych obiektów XAML. |
DependsOn |
Pobiera listę XamlMember obiektów. Te raporty składowe, w których istnieją relacje zależności dla kolejności inicjowania względem tego XamlMemberelementu . |
Invoker |
Pobiera implementację XamlMemberInvoker skojarzona z tym XamlMemberelementem . |
IsAmbient |
Pobiera wartość wskazującą, czy jest to XamlMember zgłaszane jako właściwość otoczenia. |
IsAttachable |
Pobiera wartość wskazującą, czy jest to XamlMember dołączany element członkowski. |
IsDirective |
Pobiera wartość wskazującą, czy jest to XamlMember dyrektywa XAML. |
IsEvent |
Pobiera wartość wskazującą, czy reprezentuje element XamlMember członkowski zdarzenia. |
IsNameValid |
Pobiera wartość wskazującą, czy jest to XamlMember inicjowane przy użyciu prawidłowego |
IsReadOnly |
Pobiera wartość wskazującą, czy reprezentuje element XamlMember członkowski tylko do odczytu. |
IsReadPublic |
Pobiera wartość wskazującą, czy reprezentuje element XamlMember członkowski z wywoływanym publicznym |
IsUnknown |
Pobiera wartość wskazującą, czy element członkowski nie jest rozpoznawany przez system tworzenia kopii zapasowych używany do rozpoznawania typów i składowych. |
IsWriteOnly |
Pobiera wartość wskazującą, czy reprezentuje element XamlMember członkowski tylko do zapisu. |
IsWritePublic |
Pobiera wartość wskazującą, czy reprezentuje element XamlMember członkowski, który ma wywoływane publiczne |
MarkupExtensionBracketCharacters |
Definiuje znaki otwierające i zamykające dla rozszerzenia znaczników. |
Name |
|
PreferredXamlNamespace |
Pobiera pojedynczy identyfikator URI przestrzeni nazw XAML, który identyfikuje podstawową przestrzeń nazw XAML dla tego XamlMemberelementu . |
SerializationVisibility |
Pobiera wartość wskazującą DesignerSerializationVisibility sposób przetwarzania elementu członkowskiego przez projektanta wizualnego. |
TargetType |
XamlType Pobiera typ, w którym XamlMember może istnieć. |
Type |
XamlType Pobiera typ używany przez element członkowski. |
TypeConverter |
XamlValueConverter<TConverterBase> Pobiera obiekt, który może służyć do budowy konwersji typów zadeklarowanych obiektów XAML. |
UnderlyingMember |
Pobiera system MemberInfo typów CLR, który jest dostępny dla elementu członkowskiego, który jest skonstruowany przez PropertyInfo, MethodInfolub EventInfo. |
ValueSerializer |
XamlValueConverter<TConverterBase> Pobiera obiekt, który jest używany do serializacji wartości zadeklarowanych obiektów XAML. |
Metody
Equals(Object) |
Wskazuje, czy bieżący obiekt jest równy innemu obiektowi. |
Equals(XamlMember) |
Wskazuje, czy bieżący obiekt jest równy innemu obiektowi tego samego typu. |
GetHashCode() |
Zwraca kod skrótu dla tego obiektu. |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
GetXamlNamespaces() |
Zwraca listę przestrzeni nazw XAML, w których może istnieć ten element członkowski XAML. |
LookupCustomAttributeProvider() |
W przypadku implementacji w klasie pochodnej zwraca implementację ICustomAttributeProvider . |
LookupDeferringLoader() |
XamlValueConverter<TConverterBase> Zwraca obiekt, który jest używany do odroczonego ładowania zadeklarowanych obiektów XAML. |
LookupDependsOn() |
Zwraca listę XamlMember obiektów. Elementy na liście raportują elementy członkowskie, w których istnieją relacje zależności dla kolejności inicjowania względem tego XamlMemberelementu . |
LookupInvoker() |
Zwraca element XamlMemberInvoker skojarzony z tym XamlMemberelementem . |
LookupIsAmbient() |
Zwraca, czy jest to XamlMember zgłaszane jako właściwość otoczenia. |
LookupIsEvent() |
Zwraca, czy reprezentuje to XamlMember zdarzenie. |
LookupIsReadOnly() |
Zwraca, czy jest to XamlMember właściwość przeznaczona tylko do odczytu. |
LookupIsReadPublic() |
Zwraca, czy reprezentuje właściwość XamlMember , która ma dostęp publiczny |
LookupIsUnknown() |
Zwraca, czy reprezentuje element XamlMember członkowski, który nie jest rozpoznawany przez system tworzenia kopii zapasowych używany do rozpoznawania typów i składowych. |
LookupIsWriteOnly() |
Zwraca, czy reprezentuje element XamlMember członkowski, który ma dostęp publiczny |
LookupIsWritePublic() |
Zwraca, czy reprezentuje element XamlMember członkowski, który ma dostęp publiczny |
LookupMarkupExtensionBracketCharacters() |
Zwraca znaki otwierające i zamykające dla rozszerzenia znaczników. |
LookupTargetType() |
XamlType Zwraca typ, w którym XamlMember może istnieć. |
LookupType() |
XamlType Zwraca typ używany przez element członkowski. |
LookupTypeConverter() |
Zwraca implementację konwertera typów, która jest skojarzona z tym XamlMemberelementem . |
LookupUnderlyingGetter() |
Zwraca metodę |
LookupUnderlyingMember() |
Zwraca system MemberInfo typu CLR skojarzony z tym XamlMemberelementem . |
LookupUnderlyingSetter() |
Zwraca metodę |
LookupValueSerializer() |
Zwraca implementację serializatora wartości, która jest skojarzona z tym XamlMemberelementem . |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca reprezentację ciągu tego XamlMemberelementu . |
Operatory
Equality(XamlMember, XamlMember) |
Określa, czy dwa określone XamlMember obiekty mają tę samą wartość. |
Inequality(XamlMember, XamlMember) |
Określa, czy dwa określone XamlMember obiekty mają różne wartości. |