DependencyProperty.RegisterAttachedReadOnly Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Registreert een alleen-lezen gekoppelde eigenschap.
Overloads
| Name | Description |
|---|---|
| RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) |
Registreert een alleen-lezen gekoppelde eigenschap, met het opgegeven eigenschapstype, het type eigenaar en de metagegevens van de eigenschap. |
| RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) |
Registreert een alleen-lezen gekoppelde eigenschap, met het opgegeven eigenschapstype, het type eigenaar, de metagegevens van de eigenschap en een terugbelactie voor validatie. |
RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata)
Registreert een alleen-lezen gekoppelde eigenschap, met het opgegeven eigenschapstype, het type eigenaar en de metagegevens van de eigenschap.
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
Parameters
- name
- String
De naam van de afhankelijkheidseigenschap die moet worden geregistreerd.
- propertyType
- Type
Het type eigendom.
- ownerType
- Type
Het type eigenaar dat de afhankelijkheidseigenschap registreert.
- defaultMetadata
- PropertyMetadata
Metagegevens van eigenschappen voor de afhankelijkheidseigenschap.
Retouren
Een afhankelijkheidseigenschapssleutel die moet worden gebruikt om de waarde van een statisch alleen-lezenveld in uw klasse in te stellen. Deze wordt vervolgens gebruikt om later naar de afhankelijkheidseigenschap te verwijzen.
Opmerkingen
Met deze methode wordt het type DependencyPropertyKeygeretourneerd, terwijl RegisterAttached het type DependencyPropertywordt geretourneerd. Normaal gesproken worden de sleutels die alleen-lezeneigenschappen vertegenwoordigen niet openbaar gemaakt, omdat de sleutels kunnen worden gebruikt om de waarde van de afhankelijkheidseigenschap in te stellen door aan te roepen SetValue(DependencyPropertyKey, Object). Uw klasseontwerp is van invloed op uw vereisten, maar het wordt meestal aanbevolen om de toegang en zichtbaarheid van alle DependencyPropertyKey onderdelen van uw code te beperken die nodig zijn om die afhankelijkheidseigenschap in te stellen als onderdeel van klasse- of toepassingslogica. Het wordt ook aanbevolen om een afhankelijkheidseigenschaps-id beschikbaar te maken voor de eigenschap alleen-lezen afhankelijkheden door de waarde van DependencyPropertyKey.DependencyProperty als veld public static readonly in uw klasse weer te geven.
Alleen-lezen gekoppelde eigenschappen zijn een zeldzaam scenario, omdat het primaire scenario voor een gekoppelde eigenschap het gebruik ervan is in XAML. Zonder een openbare setter kan een gekoppelde eigenschap niet worden ingesteld in de XAML-syntaxis.
Zie voor meer informatie over registratie DependencyPropertyvan afhankelijkheidseigenschappen.
RegisterAttached gebruiken voor het overnemen van afhankelijkheidseigenschappen van waarde
Een bepaald scenario voor het registreren van een afhankelijkheidseigenschap zoals gekoppeld, is het ondersteunen van overname van eigenschapswaarden. U moet waarde-overnemende afhankelijkheidseigenschappen registreren met RegisterAttached zelfs als de klasse toegangsbeheerobjecten voor eigenschappen definieert die de afhankelijkheidseigenschap beschikbaar maken, en zelfs als u niet van plan bent get* en set* statische methoden beschikbaar te maken om echte gekoppelde eigenschapstoegangsors te bieden. Hoewel overname van eigenschapswaarden kan werken voor niet-gekoppelde afhankelijkheidseigenschappen, is het overnamegedrag voor een niet-gekoppelde eigenschap via bepaalde elementgrenzen in de runtimestructuur niet gedefinieerd. Als u de eigenschap registreert als gekoppeld, wordt de gekoppelde eigenschap effectief een globale eigenschap aan het eigenschappensysteem en wordt gegarandeerd dat de overname van eigenschapswaarden over alle grenzen in een elementstructuur werkt. Gebruik altijd RegisterAttached om eigenschappen te registreren waar u Inherits opgeeft in de metagegevens. Zie Overname van eigenschapswaarde voor meer informatie.
Van toepassing op
RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)
Registreert een alleen-lezen gekoppelde eigenschap, met het opgegeven eigenschapstype, het type eigenaar, de metagegevens van de eigenschap en een terugbelactie voor validatie.
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
Parameters
- name
- String
De naam van de afhankelijkheidseigenschap die moet worden geregistreerd.
- propertyType
- Type
Het type eigendom.
- ownerType
- Type
Het type eigenaar dat de afhankelijkheidseigenschap registreert.
- defaultMetadata
- PropertyMetadata
Metagegevens van eigenschappen voor de afhankelijkheidseigenschap.
- validateValueCallback
- ValidateValueCallback
Een verwijzing naar een door de gebruiker gemaakte callback die een aangepaste validatie van de waarde van de afhankelijkheidseigenschap moet uitvoeren buiten typische typevalidatie.
Retouren
Een afhankelijkheidseigenschapssleutel die moet worden gebruikt om de waarde van een statisch alleen-lezenveld in uw klasse in te stellen, dat vervolgens wordt gebruikt om te verwijzen naar de afhankelijkheidseigenschap.
Opmerkingen
Met deze methode wordt het type DependencyPropertyKeygeretourneerd, terwijl RegisterAttached het type DependencyPropertywordt geretourneerd. Normaal gesproken zijn de sleutels die het type DependencyPropertyvertegenwoordigen. Normaal gesproken worden de sleutels die alleen-lezeneigenschappen vertegenwoordigen niet openbaar gemaakt, omdat de sleutels kunnen worden gebruikt om de waarde van de afhankelijkheidseigenschap in te stellen door aan te roepen SetValue(DependencyPropertyKey, Object). Uw klasseontwerp is van invloed op uw vereisten, maar het wordt meestal aanbevolen om de toegang en zichtbaarheid van alle DependencyPropertyKey onderdelen van uw code te beperken die nodig zijn om die afhankelijkheidseigenschap in te stellen als onderdeel van klasse- of toepassingslogica. Het wordt ook aanbevolen om een afhankelijkheidseigenschaps-id beschikbaar te maken voor de eigenschap alleen-lezen afhankelijkheden door de waarde van DependencyPropertyKey.DependencyProperty als veld public static readonly in uw klasse weer te geven.
Alleen-lezen gekoppelde eigenschappen zijn een zeldzaam scenario, omdat het primaire scenario voor een gekoppelde eigenschap het gebruik ervan is in XAML. Zonder een openbare setter kan een gekoppelde eigenschap niet worden ingesteld in de XAML-syntaxis.
Zie voor meer informatie over registratie DependencyPropertyvan afhankelijkheidseigenschappen.
RegisterAttached gebruiken voor het overnemen van afhankelijkheidseigenschappen van waarde
Een bepaald scenario voor het registreren van een afhankelijkheidseigenschap, zoals gekoppeld, is het ondersteunen van overname van Register eigenschapswaarden. U moet waarde-overnemende afhankelijkheidseigenschappen registreren met RegisterAttached zelfs als de klasse toegangsbeheerobjecten voor eigenschappen definieert die de afhankelijkheidseigenschap beschikbaar maken, en zelfs als u niet van plan bent get* en set* statische methoden beschikbaar te maken om echte gekoppelde eigenschapstoegangsors te bieden. Hoewel overname van eigenschapswaarden kan werken voor niet-gekoppelde afhankelijkheidseigenschappen, is het overnamegedrag voor een niet-gekoppelde eigenschap via bepaalde elementgrenzen in de runtimestructuur niet gedefinieerd. Als u de eigenschap registreert als gekoppeld, wordt de gekoppelde eigenschap effectief een globale eigenschap aan het eigenschappensysteem en wordt gegarandeerd dat de overname van eigenschapswaarden over alle grenzen in een elementstructuur werkt. Gebruik altijd RegisterAttached om eigenschappen te registreren waar u Inherits opgeeft in de metagegevens. Zie Overname van eigenschapswaarde voor meer informatie.