DependencyProperty Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет свойство, которое можно задать с помощью методов, например стили, привязки данных, анимации и наследование.
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
- Наследование
-
DependencyProperty
- Атрибуты
Комментарии
A DependencyProperty поддерживает следующие возможности в Windows Presentation Foundation (WPF):
Свойство можно задать в стиле. Более подробную информацию см. в разделе Стилизация и использование шаблонов.
Это свойство можно задать с помощью привязки данных. Дополнительные сведения о свойствах зависимостей привязки данных см. в разделе "Практическое руководство. Привязка свойств двух элементов управления".
Свойство можно задать с помощью динамической ссылки на ресурсы. Дополнительные сведения см. в разделе Ресурсы XAML.
Свойство может автоматически наследовать его значение от родительского элемента в дереве элементов. Дополнительные сведения см. в разделе Наследование значения свойства.
Свойство может быть анимировано. Более подробную информацию см. в разделе Общие сведения об эффектах анимации.
Свойство может сообщать о том, что предыдущее значение свойства было изменено, и значение свойства может быть принужено. Дополнительные сведения см. в разделе Проверка и обратные вызовы свойства зависимостей.
Свойство сообщает сведения в WPF, например, требуется ли изменение значения свойства системе макета для повторной компиляции визуальных элементов для элемента.
Свойство получает поддержку в конструкторе WPF для Visual Studio. Например, свойство можно изменить в окне "Свойства ".
Дополнительные сведения о свойствах зависимостей см. в разделе "Общие сведения о свойствах зависимостей". Если вы хотите, чтобы свойства пользовательских типов поддерживали возможности в предыдущем списке, необходимо создать свойство зависимостей. Сведения о создании настраиваемых свойств зависимостей см. в разделе "Настраиваемые свойства зависимостей".
Присоединенное свойство — это свойство, которое позволяет любому объекту сообщать сведения о типе, определяющем присоединенное свойство. В WPF любой тип, наследующий от DependencyObject него, может использовать присоединенное свойство независимо от того, наследуется ли тип от типа, определяющего свойство. Присоединенное свойство — это функция языка XAML. Чтобы задать присоединенное свойство в XAML, используйте ownerType. синтаксис propertyName . Примером присоединенного свойства является DockPanel.Dock свойство. Если вы хотите создать свойство, которое можно использовать для всех DependencyObject типов, необходимо создать присоединенное свойство. Дополнительные сведения о присоединенных свойствах, включая способы их создания, см. в разделе "Общие сведения о присоединенных свойствах".
Использование атрибута XAML
<object property="dependencyPropertyName"/>
-или-
<object property="ownerType.dependencyPropertyName"/>
-или-
<object property="attachedPropertyOwnerType.attachedPropertyName"/>
Значения XAML
dependencyPropertyName
Строка, указывающая DependencyProperty.Name требуемое свойство зависимостей. Это может предшествовать префикс пространства имен XML, если свойство отсутствует в пространстве имен XML по умолчанию (дополнительные сведения см. в разделе " Пространства имен XAML" и "Сопоставление пространств имен" для WPF XAML).)
ownerType
.dependencyPropertyName
Строка, указывающая тип владельца свойства зависимостей, точка (.), а затем DependencyProperty.Name. ownerType
также может предшествовать префикс пространства имен XML. Это использование особенно касается стилей и шаблонов с поздними привязками, где владелец свойства зависимостей должен быть указан для синтаксического анализа контекста, так как TargetType
он еще не известен. Более подробную информацию см. в разделе Стилизация и использование шаблонов.
attachedPropertyOwnerType
. attachedPropertyName
Строка, указывающая владельца присоединенного свойства, точки (.), а затем имя присоединенного свойства. attachedPropertyOwnerType
также может предшествовать префикс пространства имен XML.
Поля
UnsetValue |
Указывает статическое значение, используемое системой свойств WPF, а не |
Свойства
DefaultMetadata |
Возвращает метаданные свойства зависимостей по умолчанию. |
GlobalIndex |
Возвращает внутреннее сгенерированное значение, уникальным образом идентифицирующее свойство зависимостей. |
Name |
Возвращает имя свойства зависимостей. |
OwnerType |
Получает тип объекта, зарегистрировавшего свойство зависимостей в системе свойств или добавившего себя в качестве владельца свойства. |
PropertyType |
Возвращает тип, используемый свойством зависимостей для его значения. |
ReadOnly |
Возвращает значение, указывающее, является ли свойство зависимостей, идентифицируемое данным экземпляром DependencyProperty, доступным только для чтения. |
ValidateValueCallback |
Возвращает обратный вызов для проверки значения свойства зависимостей. |
Методы
AddOwner(Type) |
Добавляет другой тип в качестве владельца свойства зависимостей, которое уже зарегистрировано. |
AddOwner(Type, PropertyMetadata) |
Добавляет другой тип в качестве владельца свойства зависимостей, который уже был зарегистрирован, предоставляя метаданные свойства зависимости для свойства зависимостей в том виде, в котором оно будет существовать в предоставленном типе владельца. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Возвращает хэш-код для данного свойства DependencyProperty. |
GetMetadata(DependencyObject) |
Возвращает метаданные для этого свойства зависимостей в том виде,в котором оно существует в указанном экземпляре объекта. |
GetMetadata(DependencyObjectType) |
Возвращает метаданные для этого свойства зависимостей в том виде, в каком они представлены в указанном типе. |
GetMetadata(Type) |
Возвращает метаданные для этого свойства зависимостей в том виде, в котором оно представлено в указанном существующем типе. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
IsValidType(Object) |
Определяет, приемлемо ли указанное значение для типа данного свойства зависимостей, проверяя его по типу свойства, указанного при исходной регистрации свойства зависимостей. |
IsValidValue(Object) |
Определяет, приемлемо ли указанное значение для типа свойства, путем базовой проверки типа, а также, находится ли оно потенциально в пределах разрешенного диапазона значений для данного типа. |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OverrideMetadata(Type, PropertyMetadata) |
Задает альтернативные метаданные для этого свойства зависимостей, если оно присутствует в экземплярах указанного типа, переопределяя метаданные, которые существовали для данного свойства зависимостей в том виде, в котором оно было унаследовано от базовых типов. |
OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) |
Предоставляет альтернативные метаданные для свойства зависимостей, доступного только для чтения, когда оно присутствует в экземплярах указанного типа, переопределяя метаданные, предоставленные при первоначальной регистрации свойства зависимостей. Вы должны передать DependencyPropertyKey для свойства зависимостей, доступного только для чтения, чтобы избежать возникновения исключения. |
Register(String, Type, Type) |
Регистрирует свойство зависимостей с указанием имени свойства, типа свойства и типа владельца. |
Register(String, Type, Type, PropertyMetadata) |
Регистрирует свойство зависимостей с указанным именем свойства, типом свойства, типом владельца и метаданными свойства. |
Register(String, Type, Type, PropertyMetadata, ValidateValueCallback) |
Регистрирует свойство зависимостей с указанным именем свойства, типом свойства, типом владельца, метаданными свойства и обратным вызовом проверки значения для свойства. |
RegisterAttached(String, Type, Type) |
Регистрирует присоединенное свойство с указанием имени свойства, типа свойства и типа владельца. |
RegisterAttached(String, Type, Type, PropertyMetadata) |
Регистрирует присоединенное свойство с указанным именем и типом свойства, типом владельца и метаданными свойства. |
RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback) |
Регистрирует присоединенное свойство с указанным типом свойства, типом владельца, метаданными свойства и обратным вызовом для проверки значения свойства. |
RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) |
Регистрирует доступное только для чтения присоединенное свойство с указанным типом свойства, типом владельца и метаданными свойства. |
RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) |
Регистрирует доступное только для чтения присоединенное свойство с указанным типом свойства, типом владельца, метаданными свойства и обратным вызовом для проверки. |
RegisterReadOnly(String, Type, Type, PropertyMetadata) |
Регистрирует доступное только для чтения свойство зависимостей с указанным типом свойства, типом владельца и метаданными свойства. |
RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) |
Регистрирует доступное только для чтения свойство зависимостей с указанным типом свойства, типом владельца, метаданными свойства и обратным вызовом для проверки. |
ToString() |
Возвращает строковое представление свойства зависимостей. |