Подтвердить что ты не робот

Что такое свойство зависимостей? Каково его использование?

Возможный дубликат:
Что такое свойство зависимостей?

Что такое свойство зависимостей? Как он отличается от обычного свойства? Какова цель свойств зависимостей?

4b9b3361

Ответ 1

Свойство зависимости: свойство, которое поддерживается DependencyProperty.

Цель свойств зависимостей - предоставить способ вычисления значения свойства на основе для значения других входов.

Эти другие входы могут включать в себя системные свойства, такие как темы и пользовательские предпочтения, механизмы определения свойств "точно в срок", такие как привязка данных и анимации/раскадровки, многоцелевые шаблоны, такие как ресурсы и стили, или значения, дочерние отношения с другими элементами в дереве элементов.

Он имеет следующие возможности:

  • Свойство можно задать в стиле.

  • Свойство может быть установлено посредством привязки данных.

  • Свойство может быть задано с помощью ссылки динамического ресурса.

  • Свойство может наследовать свое значение автоматически из родительского элемента в дереве элементов.

  • Свойство может быть анимировано.

  • Свойство может сообщать, когда предыдущее значение свойства было изменено, и значение свойства можно принудительно выполнить.

  • Сведения о свойствах передаются в WPF, например, нужно ли изменять значение свойства, чтобы система компоновки перекомпоновала визуальные элементы для элемента.

  • Свойство получает поддержку в WPF Designer для Visual Studio. Например, свойство можно редактировать в окне "Свойства".

(содержимое взято из MSDN)

Ответ 2

Свойства зависимостей сохраняют свои значения вне класса, поэтому свойства могут быть назначены объекту без изменения класса объекта. Они также поддерживают общую ситуацию в WPF, где объект может иметь очень много свойств, но только некоторые из них имеют значения, отличные от значений по умолчанию. Свойства зависимостей могут иметь значения по умолчанию, поэтому это уменьшает использование памяти. Есть еще много статей, прочитайте статью: Обзор свойств зависимостей в MSDN.

Ответ 3

Я думаю, что статья MSDN может предоставить вам дополнительную информацию.

Из того, что я читал, является то, что свойство зависимостей зависит от других значений.

Цель свойств зависимостей является предоставление способа вычисления значение свойства, основанное на значении других входов. Эти другие входы могут включать системные свойства, такие как как темы и предпочтения пользователя, определение справедливой стоимости времени таких механизмов, как привязка данных и анимации/раскадровки, многократное использование шаблонов, таких как ресурсы и стилей или значений, известных через отношения родитель-ребенок с другими элементов в дереве элементов. В Кроме того, свойство зависимостей может быть внедрены для обеспечения самодостаточных валидация, значения по умолчанию, обратные вызовы что монитор изменяет на другие свойства и систему, которая может налагать ценности собственности на основе потенциально время выполнения. Производные классы также могут изменить некоторые специфические характеристики существующее свойство путем переопределения метаданных свойств зависимостей чем переопределение фактического реализация существующих свойств или создания новых свойств.

Ответ 4

Если вы говорите об объекте с атрибутом Dependency (как определено в Microsoft.Practices.Unity)

[Dependency]
public string MyProperty { get; set; }

Затем это используется для инъекции зависимостей (DI) в рамках Unity. В принципе, значение свойства устанавливается во время выполнения картой DI, а не устанавливается непосредственно в вашем коде.

Однако существует еще один атрибут Dependency, определенный в System.Runtime.CompilerServices. Пожалуйста, не могли бы вы уточнить свой вопрос, с которым вы имеете в виду.