Udostępnij za pośrednictwem


DependencyProperty Klasa

Definicja

Reprezentuje właściwość, którą można ustawić za pomocą metod, takich jak styl, powiązanie danych, animacja i dziedziczenie.

public ref class DependencyProperty sealed
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public sealed class DependencyProperty
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public sealed class DependencyProperty
[<System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")>]
type DependencyProperty = class
[<System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")>]
type DependencyProperty = class
Public NotInheritable Class DependencyProperty
Dziedziczenie
DependencyProperty
Atrybuty

Uwagi

DependencyProperty obsługuje następujące możliwości w programie Windows Presentation Foundation (WPF):

  • Właściwość można ustawić w stylu. Aby uzyskać więcej informacji, zobacz Styleing and Templating.

  • Właściwość można ustawić za pomocą powiązania danych. Aby uzyskać więcej informacji na temat właściwości zależności powiązania danych, zobacz How to: Bind the Properties of Two Controls.

  • Właściwość można ustawić przy użyciu odwołania do zasobów dynamicznych. Aby uzyskać więcej informacji, zobacz zasoby XAML.

  • Właściwość może automatycznie dziedziczyć jej wartość z elementu nadrzędnego w drzewie elementów. Aby uzyskać więcej informacji, zobacz Dziedziczenie wartości właściwości.

  • Właściwość może być animowana. Aby uzyskać więcej informacji, zobacz Animacja — omówienie.

  • Właściwość może zgłaszać, gdy poprzednia wartość właściwości została zmieniona, a wartość właściwości może być coerced. Aby uzyskać więcej informacji, zobacz wywołania zwrotne właściwości zależności i walidacji.

  • Właściwość zgłasza informacje do WPF, takie jak to, czy zmiana wartości właściwości powinna wymagać, aby system układu ponownie skomponować wizualizacje dla elementu.

  • Właściwość otrzymuje obsługę w projektancie WPF dla programu Visual Studio. Na przykład właściwość można edytować w oknie właściwości .

Aby dowiedzieć się więcej o właściwościach zależności, zobacz Właściwości zależności — omówienie. Jeśli chcesz, aby właściwości w typach niestandardowych obsługiwały możliwości na powyższej liście, należy utworzyć właściwość zależności. Aby dowiedzieć się, jak utworzyć niestandardowe właściwości zależności, zobacz Właściwości zależności niestandardowych.

Dołączona właściwość jest właściwością, która umożliwia dowolnemu obiektowi zgłaszanie informacji do typu definiującego dołączoną właściwość. W WPF każdy typ dziedziczony z DependencyObject może używać dołączonej właściwości niezależnie od tego, czy typ dziedziczy z typu definiującego właściwość. Dołączona właściwość jest funkcją języka XAML. Aby ustawić dołączoną właściwość w języku XAML, użyj ownerType.propertyName składnia. Przykładem dołączonej właściwości jest właściwość DockPanel.Dock. Jeśli chcesz utworzyć właściwość, która może być używana we wszystkich typach DependencyObject, należy utworzyć dołączoną właściwość. Aby dowiedzieć się więcej o dołączonych właściwościach, w tym o sposobie ich tworzenia, zobacz Dołączone właściwości — omówienie.

Użycie atrybutu XAML

<object property="dependencyPropertyName"/>  

-lub-

<object property="ownerType.dependencyPropertyName"/>  

-lub-

<object property="attachedPropertyOwnerType.attachedPropertyName"/>  

Wartości XAML

dependencyPropertyName
Ciąg określający DependencyProperty.Name żądanej właściwości zależności. Można to poprzedzić prefiksem przestrzeni nazw XML, jeśli właściwość nie znajduje się w domyślnej przestrzeni nazw XML (aby uzyskać szczegółowe informacje, zobacz przestrzeni nazw XAML i mapowanie przestrzeni nazw dlaWPF XAML).

ownerType.dependencyPropertyName
Ciąg określający typ właściciela właściwości zależności, kropkę (.), a następnie DependencyProperty.Name. ownerType można również poprzedzić prefiksem przestrzeni nazw XML. To użycie jest szczególnie związane ze stylami i szablonami, w których właściciel właściwości zależności musi być określony dla kontekstu analizowania, ponieważ TargetType nie jest jeszcze znany. Aby uzyskać więcej informacji, zobacz Styleing and Templating.

attachedPropertyOwnerType .attachedPropertyName
Ciąg określający właściciela dołączonej właściwości, kropkę (.), a następnie nazwę dołączonej właściwości. attachedPropertyOwnerType można również poprzedzić prefiksem przestrzeni nazw XML.

Pola

UnsetValue

Określa wartość statyczną używaną przez system właściwości WPF, a nie null wskazać, że właściwość istnieje, ale nie ma jej wartości ustawionej przez system właściwości.

Właściwości

DefaultMetadata

Pobiera domyślne metadane właściwości zależności.

GlobalIndex

Pobiera wewnętrznie wygenerowaną wartość, która jednoznacznie identyfikuje właściwość zależności.

Name

Pobiera nazwę właściwości zależności.

OwnerType

Pobiera typ obiektu, który zarejestrował właściwość zależności w systemie właściwości, lub dodał się jako właściciel właściwości.

PropertyType

Pobiera typ, którego właściwość zależności używa dla jej wartości.

ReadOnly

Pobiera wartość wskazującą, czy właściwość zależności zidentyfikowana przez to wystąpienie DependencyProperty jest właściwością zależności tylko do odczytu.

ValidateValueCallback

Pobiera wywołanie zwrotne sprawdzania poprawności wartości dla właściwości zależności.

Metody

AddOwner(Type)

Dodaje inny typ jako właściciel właściwości zależności, która została już zarejestrowana.

AddOwner(Type, PropertyMetadata)

Dodaje inny typ jako właściciel właściwości zależności, która została już zarejestrowana, dostarczając metadane właściwości zależności dla właściwości zależności, ponieważ będzie istnieć w podanym typie właściciela.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
GetHashCode()

Zwraca kod skrótu dla tego DependencyProperty.

GetMetadata(DependencyObject)

Zwraca metadane dla tej właściwości zależności, ponieważ istnieje w określonym wystąpieniu obiektu.

GetMetadata(DependencyObjectType)

Zwraca metadane dla tej właściwości zależności, ponieważ istnieje w określonym typie.

GetMetadata(Type)

Zwraca metadane dla tej właściwości zależności, ponieważ istnieje w określonym istniejącym typie.

GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
IsValidType(Object)

Określa, czy określona wartość jest akceptowalna dla typu tej właściwości zależności, zgodnie z typem właściwości podanym w pierwotnej rejestracji właściwości zależności.

IsValidValue(Object)

Określa, czy podana wartość jest akceptowana dla typu właściwości za pomocą sprawdzania typów podstawowych, a także potencjalnie, jeśli znajduje się w dozwolonym zakresie wartości dla tego typu.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
OverrideMetadata(Type, PropertyMetadata)

Określa alternatywne metadane dla tej właściwości zależności, gdy jest obecny w wystąpieniach określonego typu, przesłaniając metadane, które istniały dla właściwości zależności, ponieważ były dziedziczone z typów bazowych.

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

Dostarcza alternatywne metadane dla właściwości zależności tylko do odczytu, gdy jest obecny w wystąpieniach określonego typu, przesłaniając metadane podane w początkowej rejestracji właściwości zależności. Aby uniknąć zgłaszania wyjątku, należy przekazać DependencyPropertyKey dla właściwości zależności tylko do odczytu.

Register(String, Type, Type)

Rejestruje właściwość zależności z określoną nazwą właściwości, typem właściwości i typem właściciela.

Register(String, Type, Type, PropertyMetadata)

Rejestruje właściwość zależności z określoną nazwą właściwości, typem właściwości, typem właściciela i metadanymi właściwości.

Register(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Rejestruje właściwość zależności z określoną nazwą właściwości, typem właściwości, typem właściciela, metadanymi właściwości i wywołaniem zwrotnym walidacji wartości dla właściwości.

RegisterAttached(String, Type, Type)

Rejestruje dołączoną właściwość z określoną nazwą właściwości, typem właściwości i typem właściciela.

RegisterAttached(String, Type, Type, PropertyMetadata)

Rejestruje dołączoną właściwość z określoną nazwą właściwości, typem właściwości, typem właściciela i metadanymi właściwości.

RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Rejestruje dołączoną właściwość z określonym typem właściwości, typem właściciela, metadanymi właściwości i wywołaniem zwrotnym weryfikacji wartości dla właściwości.

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.

RegisterReadOnly(String, Type, Type, PropertyMetadata)

Rejestruje właściwość zależności tylko do odczytu z określonym typem właściwości, typem właściciela i metadanymi właściwości.

RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Rejestruje właściwość zależności 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.

ToString()

Zwraca reprezentację ciągu właściwości zależności.

Dotyczy

Zobacz też