DependencyProperty.RegisterAttachedReadOnly Metoda
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.
Rejestruje właściwość dołączoną tylko do odczytu.
Przeciążenia
RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) |
Rejestruje właściwość dołączoną tylko do odczytu z określonym typem właściwości, typem właściciela i metadanymi właściwości. |
RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) |
Rejestruje właściwość dołączoną tylko do odczytu z określonym typem właściwości, typem właściciela, metadanymi właściwości i wywołaniem zwrotnym weryfikacji. |
RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata)
Rejestruje właściwość dołączoną tylko do odczytu z określonym typem właściwości, typem właściciela i metadanymi właściwości.
public:
static System::Windows::DependencyPropertyKey ^ RegisterAttachedReadOnly(System::String ^ name, Type ^ propertyType, Type ^ ownerType, System::Windows::PropertyMetadata ^ defaultMetadata);
public static System.Windows.DependencyPropertyKey RegisterAttachedReadOnly (string name, Type propertyType, Type ownerType, System.Windows.PropertyMetadata defaultMetadata);
static member RegisterAttachedReadOnly : string * Type * Type * System.Windows.PropertyMetadata -> System.Windows.DependencyPropertyKey
Public Shared Function RegisterAttachedReadOnly (name As String, propertyType As Type, ownerType As Type, defaultMetadata As PropertyMetadata) As DependencyPropertyKey
Parametry
- name
- String
Nazwa właściwości zależności do zarejestrowania.
- propertyType
- Type
Typ właściwości.
- ownerType
- Type
Typ właściciela rejestrujący właściwość zależności.
- defaultMetadata
- PropertyMetadata
Metadane właściwości dla właściwości zależności.
Zwraca
Klucz właściwości zależności, który powinien służyć do ustawiania wartości statycznego pola tylko do odczytu w klasie, który jest następnie używany do odwołowania się do właściwości zależności później.
Uwagi
Ta metoda zwraca typ , natomiast RegisterAttached zwraca typ .DependencyPropertyKeyDependencyProperty Zazwyczaj klucze reprezentujące właściwości tylko do odczytu nie są upublicznione, ponieważ klucze mogą służyć do ustawiania wartości właściwości zależności przez wywołanie metody SetValue(DependencyPropertyKey, Object). Projekt klasy będzie mieć wpływ na wymagania, ale zazwyczaj zaleca się ograniczenie dostępu i widoczności dowolnych DependencyPropertyKey elementów do tylko tych części kodu, które są niezbędne do ustawienia tej właściwości zależności w ramach logiki klasy lub aplikacji. Zaleca się również uwidocznienie identyfikatora właściwości zależności dla właściwości zależności tylko do odczytu przez uwidocznienie wartości DependencyPropertyKey.DependencyProperty public static readonly
jako pola w klasie.
Właściwości dołączone tylko do odczytu są rzadkim scenariuszem, ponieważ podstawowy scenariusz dla dołączonej właściwości jest używany w języku XAML. Bez publicznego zestawu nie można ustawić dołączonej właściwości w składni XAML.
Aby uzyskać więcej informacji na temat rejestracji właściwości zależności, zobacz DependencyProperty.
Używanie funkcji RegisterAttached dla właściwości zależności dziedziczonej wartości
Jednym z konkretnych scenariuszy rejestrowania właściwości zależności, jak dołączono, jest obsługa dziedziczenia wartości właściwości. Należy zarejestrować właściwości zależności dziedziczone przez wartość RegisterAttached nawet wtedy, gdy klasa definiuje metody otoki właściwości, które uwidaczniają właściwość zależności, a nawet jeśli nie zamierzasz uwidocznić metod statycznych Get* i Set* w celu zapewnienia dostępu do prawdziwej dołączonej właściwości. Mimo że dziedziczenie wartości właściwości może działać dla właściwości zależności nieprzyłączonej, zachowanie dziedziczenia dla właściwości nieprzyłączonej przez niektóre granice elementów w drzewie środowiska uruchomieniowego jest niezdefiniowane. Zarejestrowanie właściwości jako dołączonej skutecznie sprawia, że dołączona właściwość globalna do systemu właściwości i zapewnia, że dziedziczenie wartości właściwości działa we wszystkich granicach w drzewie elementów. Zawsze używaj polecenia RegisterAttached , aby zarejestrować właściwości określone Inherits w metadanych. Aby uzyskać więcej informacji, zobacz Dziedziczenie wartości właściwości.
Dotyczy
RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)
Rejestruje właściwość dołączoną tylko do odczytu z określonym typem właściwości, typem właściciela, metadanymi właściwości i wywołaniem zwrotnym weryfikacji.
public:
static System::Windows::DependencyPropertyKey ^ RegisterAttachedReadOnly(System::String ^ name, Type ^ propertyType, Type ^ ownerType, System::Windows::PropertyMetadata ^ defaultMetadata, System::Windows::ValidateValueCallback ^ validateValueCallback);
public static System.Windows.DependencyPropertyKey RegisterAttachedReadOnly (string name, Type propertyType, Type ownerType, System.Windows.PropertyMetadata defaultMetadata, System.Windows.ValidateValueCallback validateValueCallback);
static member RegisterAttachedReadOnly : string * Type * Type * System.Windows.PropertyMetadata * System.Windows.ValidateValueCallback -> System.Windows.DependencyPropertyKey
Public Shared Function RegisterAttachedReadOnly (name As String, propertyType As Type, ownerType As Type, defaultMetadata As PropertyMetadata, validateValueCallback As ValidateValueCallback) As DependencyPropertyKey
Parametry
- name
- String
Nazwa właściwości zależności do zarejestrowania.
- propertyType
- Type
Typ właściwości.
- ownerType
- Type
Typ właściciela rejestrujący właściwość zależności.
- defaultMetadata
- PropertyMetadata
Metadane właściwości dla właściwości zależności.
- validateValueCallback
- ValidateValueCallback
Odwołanie do wywołania zwrotnego utworzonego przez użytkownika, które powinno wykonać niestandardową walidację wartości właściwości zależności poza typową walidacją typu.
Zwraca
Klucz właściwości zależności, który powinien służyć do ustawiania wartości statycznego pola tylko do odczytu w klasie, która jest następnie używana do odwołowania się do właściwości zależności.
Uwagi
Ta metoda zwraca typ , natomiast RegisterAttached zwraca typ .DependencyPropertyKeyDependencyProperty Zazwyczaj klucze reprezentujące typ DependencyProperty. Zazwyczaj klucze reprezentujące właściwości tylko do odczytu nie są upublicznione, ponieważ klucze mogą służyć do ustawiania wartości właściwości zależności przez wywołanie metody SetValue(DependencyPropertyKey, Object). Projekt klasy będzie mieć wpływ na wymagania, ale zazwyczaj zaleca się ograniczenie dostępu i widoczności dowolnych DependencyPropertyKey elementów do tylko tych części kodu, które są niezbędne do ustawienia tej właściwości zależności w ramach logiki klasy lub aplikacji. Zaleca się również uwidocznienie identyfikatora właściwości zależności dla właściwości zależności tylko do odczytu przez uwidocznienie wartości DependencyPropertyKey.DependencyProperty public static readonly
jako pola w klasie.
Właściwości dołączone tylko do odczytu są rzadkim scenariuszem, ponieważ podstawowy scenariusz dla dołączonej właściwości jest używany w języku XAML. Bez publicznego zestawu nie można ustawić dołączonej właściwości w składni XAML.
Aby uzyskać więcej informacji na temat rejestracji właściwości zależności, zobacz DependencyProperty.
Używanie funkcji RegisterAttached dla właściwości zależności dziedziczonej wartości
Jednym z konkretnych scenariuszy rejestrowania właściwości zależności jako dołączonej Register zamiast jest obsługa dziedziczenia wartości właściwości. Należy zarejestrować właściwości zależności dziedziczone przez wartość RegisterAttached nawet wtedy, gdy klasa definiuje metody otoki właściwości, które uwidaczniają właściwość zależności, a nawet jeśli nie zamierzasz uwidocznić metod statycznych Get* i Set* w celu zapewnienia dostępu do prawdziwej dołączonej właściwości. Mimo że dziedziczenie wartości właściwości może działać dla właściwości zależności nieprzyłączonej, zachowanie dziedziczenia dla właściwości nieprzyłączonej przez niektóre granice elementów w drzewie środowiska uruchomieniowego jest niezdefiniowane. Zarejestrowanie właściwości jako dołączonej skutecznie sprawia, że dołączona właściwość globalna do systemu właściwości i zapewnia, że dziedziczenie wartości właściwości działa we wszystkich granicach w drzewie elementów. Zawsze używaj polecenia RegisterAttached , aby zarejestrować właściwości określone Inherits w metadanych. Aby uzyskać więcej informacji, zobacz Dziedziczenie wartości właściwości.