Sdílet prostřednictvím


DependencyPropertyKey Třída

Definice

Poskytuje identifikátor vlastnosti závislosti pro omezený přístup k zápisu k vlastnosti závislosti jen pro čtení.

public ref class DependencyPropertyKey sealed
public sealed class DependencyPropertyKey
type DependencyPropertyKey = class
Public NotInheritable Class DependencyPropertyKey
Dědičnost
DependencyPropertyKey

Příklady

Následující příklad registruje vlastnost závislostí jen pro čtení a také používá klíč pro dva účely v jiných členech třídy: implementace get "wrapper" a jako identifikátor operace chráněného určení, která nastaví hodnotu na základě výpočtů jiných hodnot vlastností.

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

DependencyPropertyKey instance jsou získány jako návratová hodnota volání registrace vlastnosti závislosti pomocí metod RegisterReadOnly nebo RegisterAttachedReadOnly.

Typy, které registrují vlastnost závislosti, mohou použít DependencyPropertyKey ve voláních SetValue a ClearValue, které upraví hodnotu vlastnosti jako součást logiky třídy. Pokud je povolena úrovní přístupu klíče, související třídy mohou také použít klíč a vlastnost závislosti. Můžete například deklarovat klíč jako interní a jiné typy v rámci stejného sestavení mohou také nastavit tuto vlastnost závislosti.

DependencyPropertyKey vrácená registrací vlastností závislostí jen pro čtení by neměla být veřejná, protože zveřejnění klíče nastaví vlastnost settable, a tím porazí bod registrace jako vlastnost závislosti jen pro čtení. Zveřejnění klíče také způsobí neshodu mezi dostupnými chováními vlastností závislostí a implementacemi obálky vlastností CLR (Common Language Runtime), což je špatný návrh třídy.

Místo vystavení samotného klíče byste měli vystavit DependencyProperty hodnotu DependencyPropertyKey jako public static readonlyDependencyProperty ve třídě. To umožňuje vlastnosti vrátit platný identifikátor vlastnosti závislosti pro určité operace systému vlastností, jako je výčet místně nastavených hodnot. Získaný identifikátor však nemá úplné možnosti DependencyProperty pro mnoho operací systému vlastností.

Vlastnosti

DependencyProperty

Získá identifikátor vlastnosti závislosti přidružený k tomuto specializovanému identifikátoru vlastnosti závislosti jen pro čtení.

Metody

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
OverrideMetadata(Type, PropertyMetadata)

Přepíše metadata vlastnosti závislosti jen pro čtení, která je reprezentována tímto identifikátorem vlastnosti závislosti.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také