DependencyProperty DependencyProperty DependencyProperty DependencyProperty Class

Определение

Представляет свойство, которое можно задать с помощью методов, например стили, привязки данных, анимации и наследование.Represents a property that can be set through methods such as, styling, data binding, animation, and inheritance.

public ref class DependencyProperty sealed
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public sealed class DependencyProperty
type DependencyProperty = class
Public NotInheritable Class DependencyProperty
Наследование
DependencyPropertyDependencyPropertyDependencyPropertyDependencyProperty
Атрибуты

Комментарии

Объект DependencyProperty поддерживает следующие возможности в Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF):A DependencyProperty supports the following capabilities in Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF):

  • Свойство может быть задано в стиле.The property can be set in a style. Более подробную информацию см. в разделе Стилизация и использование шаблонов.For more information, see Styling and Templating.

  • Свойство может устанавливаться через привязку данных.The property can be set through data binding. Дополнительные сведения о свойствах зависимостей привязки данных, см. в разделе как: Привязка свойств двух элементов управления.For more information about data binding dependency properties, see How to: Bind the Properties of Two Controls.

  • Свойство может быть задано со ссылкой на динамический ресурс.The property can be set with a dynamic resource reference. Дополнительные сведения см. в разделе Ресурсы XAML.For more information, see XAML Resources.

  • Свойство может наследовать свое значение автоматически от родительского элемента в дереве элементов.The property can inherit its value automatically from a parent element in the element tree. Дополнительные сведения см. в разделе Наследование значения свойства.For more information, see Property Value Inheritance.

  • Свойства могут быть анимированы.The property can be animated. Более подробную информацию см. в разделе Общие сведения об эффектах анимации.For more information, see Animation Overview.

  • Свойство может сообщать, когда предыдущее значение свойства было изменено, и можно ли привести значение свойства.The property can report when the previous value of the property has been changed and the property value can be coerced. Дополнительные сведения см. в разделе Проверка и обратные вызовы свойства зависимостей.For more information, see Dependency Property Callbacks and Validation.

  • Свойство сообщает информацию для WPFWPF, такие как изменение значения свойства следует, требуется ли системе макета, чтобы представлять визуализации для элемента.The property reports information to WPFWPF, such as whether changing a property value should require the layout system to recompose the visuals for an element.

  • Свойство получает поддержки в Конструктор WPF для Visual StudioWPF Designer for Visual Studio.The property receives support in the Конструктор WPF для Visual StudioWPF Designer for Visual Studio. Например, можно изменить свойство в свойства окна.For example, the property can be edited in the Properties window.

Дополнительные сведения о свойствах зависимостей см. в разделе Общие сведения о свойствах зависимостей.To learn more about dependency properties, see Dependency Properties Overview. Если вы хотите свойства на пользовательские типы для поддержки возможностей в списке выше, следует создать свойство зависимостей.If you want properties on your custom types to support the capabilities in the preceding list, you should create a dependency property. Чтобы научиться создавать пользовательские свойства взаимозависимости, см. в разделе пользовательские свойства зависимости.To learn how to create custom dependency properties, see Custom Dependency Properties.

Присоединенное свойство — это свойство, которое включает любой объект, чтобы сообщить сведения о тип, который определяет присоединенное свойство.An attached property is a property that enables any object to report information to the type that defines the attached property. В WPFWPF, любой тип, наследующий от DependencyObject можно использовать независимо от того, является ли тип наследуется от типа, который определяет свойство присоединенное свойство.In WPFWPF, any type that inherits from DependencyObject can use an attached property regardless of whether the type inherits from the type that defines the property. Присоединенное свойство — это функция XAMLXAML языка.An attached property is a feature of the XAMLXAML language. Чтобы задать присоединенное свойство в XAMLXAML, использовать Тип_владельца. propertyName синтаксис.To set an attached property in XAMLXAML, use the ownerType.propertyName syntax. Пример присоединенного свойства — DockPanel.Dock свойство.An example of an attached property is the DockPanel.Dock property. Если вы хотите создать свойство, которое может использоваться на всех DependencyObject типов, а затем следует создавать присоединенное свойство.If you want to create a property that can be used on all DependencyObject types, then you should create an attached property. Дополнительные сведения о вложенных свойствах, в том числе о способах их создания, см. в разделе зависимостей.To learn more about attached properties, including how to create them, see Attached Properties Overview.

Использование атрибута XAMLXAML Attribute Usage

<object property="dependencyPropertyName"/>  
- or -  
<object property="ownerType.dependencyPropertyName"/>  
- or -  
<object property="attachedPropertyOwnerType.attachedPropertyName"/>  

Значения XAMLXAML Values

dependencyPropertyName
Строка, указывающая DependencyProperty.Name свойства нужные зависимости.A string that specifies the DependencyProperty.Name of the desired dependency property. Это может стоять префикс пространства имен XML, если свойство не существует в пространстве имен XML по умолчанию (Дополнительные сведения см. в разделе пространства имен XAML и сопоставление пространств имен для WPF XAML.)This can be preceded by an XML namespace prefix if the property is not in the default XML namespace (for details, see XAML Namespaces and Namespace Mapping for WPF XAML.)

ownerType.dependencyPropertyNameownerType.dependencyPropertyName
Строка, указывающая тип владельца свойства зависимостей, точка (.), а затем DependencyProperty.Name.A string that specifies an owner type of a dependency property, a dot (.), then the DependencyProperty.Name. ownerType может также предшествовать префикс пространства имен XML.ownerType can also be preceded by an XML namespace prefix. Такое использование конкретной с поздним связыванием стили и шаблоны, где необходимо указать владельца свойства зависимостей для синтаксического анализа контекста, так как TargetType еще не известна.This usage is particular to late-bound styles and templates, where the owner of the dependency property must be specified for parsing context because the TargetType is not yet known. Более подробную информацию см. в разделе Стилизация и использование шаблонов.For more information, see Styling and Templating.

attachedPropertyOwnerType .attachedPropertyOwnerType . attachedPropertyName
Строковое значение, указывающее владельца присоединенного свойства, точка (.), а затем имя вложенного свойства.A string that specifies the owner of an attached property, a dot (.), then the attached property name. attachedPropertyOwnerType может также предшествовать префикс пространства имен XML.attachedPropertyOwnerType can also be preceded by an XML namespace prefix.

Поля

UnsetValue UnsetValue UnsetValue UnsetValue

Задает статическое значение, используемое системой свойств WPFWPF вместо null для указания того, что свойство существует, но его значение не задано системой свойств.Specifies a static value that is used by the WPFWPF property system rather than null to indicate that the property exists, but does not have its value set by the property system.

Свойства

DefaultMetadata DefaultMetadata DefaultMetadata DefaultMetadata

Возвращает метаданные свойства зависимостей по умолчанию.Gets the default metadata of the dependency property.

GlobalIndex GlobalIndex GlobalIndex GlobalIndex

Возвращает внутреннее сгенерированное значение, уникальным образом идентифицирующее свойство зависимостей.Gets an internally generated value that uniquely identifies the dependency property.

Name Name Name Name

Возвращает имя свойства зависимостей.Gets the name of the dependency property.

OwnerType OwnerType OwnerType OwnerType

Получает тип объекта, зарегистрировавшего свойство зависимостей в системе свойств или добавившего себя в качестве владельца свойства.Gets the type of the object that registered the dependency property with the property system, or added itself as owner of the property.

PropertyType PropertyType PropertyType PropertyType

Возвращает тип, используемый свойством зависимостей для его значения.Gets the type that the dependency property uses for its value.

ReadOnly ReadOnly ReadOnly ReadOnly

Возвращает значение, указывающее, является ли свойство зависимостей, идентифицируемое данным экземпляром DependencyProperty, доступным только для чтения.Gets a value that indicates whether the dependency property identified by this DependencyProperty instance is a read-only dependency property.

ValidateValueCallback ValidateValueCallback ValidateValueCallback ValidateValueCallback

Возвращает обратный вызов для проверки значения свойства зависимостей.Gets the value validation callback for the dependency property.

Методы

AddOwner(Type) AddOwner(Type) AddOwner(Type) AddOwner(Type)

Добавляет другой тип в качестве владельца свойства зависимостей, которое уже зарегистрировано.Adds another type as an owner of a dependency property that has already been registered.

AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata)

Добавляет другой тип в качестве владельца свойства зависимостей, который уже был зарегистрирован, предоставляя метаданные свойства зависимости для свойства зависимостей в том виде, в котором оно будет существовать в предоставленном типе владельца.Adds another type as an owner of a dependency property that has already been registered, providing dependency property metadata for the dependency property as it will exist on the provided owner type.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Возвращает хэш-код для данного свойства DependencyProperty.Returns a hash code for this DependencyProperty.

GetMetadata(DependencyObject) GetMetadata(DependencyObject) GetMetadata(DependencyObject) GetMetadata(DependencyObject)

Возвращает метаданные для этого свойства зависимостей в том виде,в котором оно существует в указанном экземпляре объекта.Returns the metadata for this dependency property as it exists on the specified object instance.

GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType)

Возвращает метаданные для этого свойства зависимостей в том виде, в каком они представлены в указанном типе.Returns the metadata for this dependency property as it exists on a specified type.

GetMetadata(Type) GetMetadata(Type) GetMetadata(Type) GetMetadata(Type)

Возвращает метаданные для этого свойства зависимостей в том виде, в котором оно представлено в указанном существующем типе.Returns the metadata for this dependency property as it exists on a specified existing type.

GetType() GetType() GetType() GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Inherited from Object)
IsValidType(Object) IsValidType(Object) IsValidType(Object) IsValidType(Object)

Определяет, приемлемо ли указанное значение для типа данного свойства зависимостей, проверяя его по типу свойства, указанного при исходной регистрации свойства зависимостей.Determines whether a specified value is acceptable for this dependency property's type, as checked against the property type provided in the original dependency property registration.

IsValidValue(Object) IsValidValue(Object) IsValidValue(Object) IsValidValue(Object)

Определяет, приемлемо ли указанное значение для типа свойства, путем базовой проверки типа, а также, находится ли оно потенциально в пределах разрешенного диапазона значений для данного типа.Determines whether the provided value is accepted for the type of property through basic type checking, and also potentially if it is within the allowed range of values for that type.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata)

Задает альтернативные метаданные для этого свойства зависимостей, если оно присутствует в экземплярах указанного типа, переопределяя метаданные, которые существовали для данного свойства зависимостей в том виде, в котором оно было унаследовано от базовых типов.Specifies alternate metadata for this dependency property when it is present on instances of a specified type, overriding the metadata that existed for the dependency property as it was inherited from base types.

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

Предоставляет альтернативные метаданные для свойства зависимостей, доступного только для чтения, когда оно присутствует в экземплярах указанного типа, переопределяя метаданные, предоставленные при первоначальной регистрации свойства зависимостей.Supplies alternate metadata for a read-only dependency property when it is present on instances of a specified type, overriding the metadata that was provided in the initial dependency property registration. Вы должны передать DependencyPropertyKey для свойства зависимостей, доступного только для чтения, чтобы избежать возникновения исключения.You must pass the DependencyPropertyKey for the read-only dependency property to avoid raising an exception.

Register(String, Type, Type) Register(String, Type, Type) Register(String, Type, Type) Register(String, Type, Type)

Регистрирует свойство зависимостей с указанием имени свойства, типа свойства и типа владельца.Registers a dependency property with the specified property name, property type, and owner type.

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

Регистрирует свойство зависимостей с указанным именем свойства, типом свойства, типом владельца и метаданными свойства.Registers a dependency property with the specified property name, property type, owner type, and property metadata.

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

Регистрирует свойство зависимостей с указанным именем свойства, типом свойства, типом владельца, метаданными свойства и обратным вызовом проверки значения для свойства.Registers a dependency property with the specified property name, property type, owner type, property metadata, and a value validation callback for the property.

RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type)

Регистрирует присоединенное свойство с указанием имени свойства, типа свойства и типа владельца.Registers an attached property with the specified property name, property type, and owner type.

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

Регистрирует присоединенное свойство с указанным именем и типом свойства, типом владельца и метаданными свойства.Registers an attached property with the specified property name, property type, owner type, and property metadata.

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

Регистрирует присоединенное свойство с указанным типом свойства, типом владельца, метаданными свойства и обратным вызовом для проверки значения свойства.Registers an attached property with the specified property type, owner type, property metadata, and value validation callback for the property.

RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata)

Регистрирует доступное только для чтения присоединенное свойство с указанным типом свойства, типом владельца и метаданными свойства.Registers a read-only attached property, with the specified property type, owner type, and property metadata.

RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Регистрирует доступное только для чтения присоединенное свойство с указанным типом свойства, типом владельца, метаданными свойства и обратным вызовом для проверки.Registers a read-only attached property, with the specified property type, owner type, property metadata, and a validation callback.

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

Регистрирует доступное только для чтения свойство зависимостей с указанным типом свойства, типом владельца и метаданными свойства.Registers a read-only dependency property, with the specified property type, owner type, and property metadata.

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

Регистрирует доступное только для чтения свойство зависимостей с указанным типом свойства, типом владельца, метаданными свойства и обратным вызовом для проверки.Registers a read-only dependency property, with the specified property type, owner type, property metadata, and a validation callback.

ToString() ToString() ToString() ToString()

Возвращает строковое представление свойства зависимостей.Returns the string representation of the dependency property.

Применяется к

Дополнительно