DependencyPropertyKey.DependencyProperty Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá identifikátor vlastnosti závislosti přidružený k tomuto specializovanému identifikátoru vlastnosti závislosti jen pro čtení.
public:
property System::Windows::DependencyProperty ^ DependencyProperty { System::Windows::DependencyProperty ^ get(); };
public System.Windows.DependencyProperty DependencyProperty { get; }
member this.DependencyProperty : System.Windows.DependencyProperty
Public ReadOnly Property DependencyProperty As DependencyProperty
Hodnota vlastnosti
Odpovídající identifikátor vlastnosti závislosti.
Příklady
Následující příklad volá DependencyProperty k zveřejnění identifikátoru DependencyProperty (AquariumGraphicProperty
) pro AquariumGraphic
vlastnost závislostí jen pro čtení třídy. Příklad také ukazuje vytvoření DependencyPropertyKey (jako interní člen) a přístupové objekty get pro AquariumGraphic
.
internal static readonly DependencyPropertyKey AquariumSizeKey = DependencyProperty.RegisterReadOnly(
"AquariumSize",
typeof(double),
typeof(Aquarium),
new PropertyMetadata(double.NaN)
);
public static readonly DependencyProperty AquariumSizeProperty =
AquariumSizeKey.DependencyProperty;
public double AquariumSize
{
get { return (double)GetValue(AquariumSizeProperty); }
}
Friend Shared ReadOnly AquariumSizeKey As DependencyPropertyKey = DependencyProperty.RegisterReadOnly("AquariumSize", GetType(Double), GetType(Aquarium), New PropertyMetadata(Double.NaN))
Public Shared ReadOnly AquariumSizeProperty As DependencyProperty = AquariumSizeKey.DependencyProperty
Public ReadOnly Property AquariumSize() As Double
Get
Return CDbl(GetValue(AquariumSizeProperty))
End Get
End Property
Poznámky
Hodnota DependencyProperty umožňuje identifikátor vlastnosti jen pro čtení účastnit se běžných operací systému vlastností pomocí některých stejných rozhraní, která se používají pro vlastnosti závislostí pro čtení i zápis.
Pokud chcete implementovat přístupové objekty get vlastnosti pro vlastnost závislostí jen pro čtení, měli byste vytvořit a vystavit identifikátor DependencyProperty ve vaší třídě. Slouží k dvěma účelům:
Vaše vlastní třída potřebuje identifikátor DependencyProperty k implementaci přístupového objektu get pro obálku vlastnosti. DependencyProperty použijete jako parametr pro volání GetValue, které implementuje přístupový objekt get.
DependencyProperty identifikátory zpřístupňují vlastnost závislostí systému vlastností tak, aby k ní mohly přistupovat jiné metody, které spoléhají na metadata, ve standardní podobě. Pokud jste například volali GetLocalValueEnumerator u některých DependencyObject a získali výčet místně nastavených vlastností (hodnot a identifikátorů), byl by identifikátor vrácený pro vlastnost závislostí jen pro čtení DependencyProperty hodnota místo klíče. Nezvyšující identifikátor DependencyProperty nezvyšuje zabezpečení vlastnosti závislosti jen pro čtení žádným způsobem, pouze vytváří operace, které zahrnují vaši vlastnost, a to jak pro následné odvozené třídy, tak instance třídy.
Pokud chcete vystavit identifikátor DependencyProperty předmětu, zavoláte DependencyProperty přímo na klíč. Tuto hodnotu použijte k vytvoření identifikátoru public static readonly
DependencyProperty ve třídě, který paralelně DependencyPropertyKey.