DependencyProperty Klasa

Definicja

Reprezentuje właściwość, którą można ustawić za pomocą metod, takich jak stylizacja, 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

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

  • Właściwość można ustawić w stylu. Aby uzyskać więcej informacji, zobacz Styling and Templating (Styling i 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 (Instrukcje: wiązanie właściwości dwóch kontrolek).

  • Właściwość można ustawić za pomocą dynamicznego odwołania do zasobu. Aby uzyskać więcej informacji, zobacz Zasoby XAML.

  • Właściwość może dziedziczyć jej wartość automatycznie 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 Omówienie animacji.

  • 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 walidacja.

  • Właściwość zgłasza informacje do WPF, takie jak to, czy zmiana wartości właściwości powinna wymagać od systemu układu ponownego skompilowania wizualizacji 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 Omówienie właściwości zależności. Jeśli chcesz, aby właściwości w typach niestandardowych obsługiwały możliwości z poprzedniej listy, 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ść to właściwość, która umożliwia obiektowi zgłaszanie informacji o typie definiującym dołączoną właściwość. W programie 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 właściwości ownerType. propertyName składnia. Przykładem dołączonej właściwości jest DockPanel.Dock właściwość . Jeśli chcesz utworzyć właściwość, która może być używana we wszystkich DependencyObject typach, 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 Omówienie dołączonych właściwości.

Użycie atrybutu języka 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 żądaną właściwość zależności. Może to być poprzedzone prefiksem przestrzeni nazw XML, jeśli właściwość nie znajduje się w domyślnej przestrzeni nazw XML (aby uzyskać szczegółowe informacje, zobacz Przestrzenie nazw XAML I Mapowanie przestrzeni nazw dla WPF 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że być również poprzedzony prefiksem przestrzeni nazw XML. To użycie jest szczególnie związane z późnymi stylami i szablonami, w których właściciel właściwości zależności musi zostać określony dla kontekstu analizy, ponieważ TargetType nie jest jeszcze znany. Aby uzyskać więcej informacji, zobacz Styling and Templating (Styling i Templating).

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

Pola

UnsetValue

Określa wartość statyczną używaną przez system właściwości WPF zamiast null wskazywać, ż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ść dependency używa dla jej wartości.

ReadOnly

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

ValidateValueCallback

Pobiera wywołanie zwrotne weryfikacji 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, zapewniają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 dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Zwraca kod skrótu dla tego pliku 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()

Type Pobiera wartość 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 oryginalnej 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ą podstawowego sprawdzania typów, a także potencjalnie, jeśli znajduje się w dozwolonym zakresie wartości dla tego typu.

MemberwiseClone()

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

(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 podstawowych.

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 DependencyPropertyKey , należy przekazać właściwość zależności tylko do odczytu.

Register(String, Type, Type)

Rejestruje właściwość zależności o określonej nazwie właściwości, typie właściwości i typie 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 weryfikacji wartości dla właściwości.

RegisterAttached(String, Type, Type)

Rejestruje dołączoną właściwość o określonej nazwie właściwości, typie właściwości i typie 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ż