Silverlight - зачем использовать вложенное свойство?

Я изучаю Silverlight (в основном для разработки под Windows Phone). Я прочитал Silverlight 2 Unleashed и сейчас читаю Silverlight 4 Unleashed. В последнем есть глава о свойствах зависимостей. Как я понял из этой главы, объект зависимости (со свойствами зависимости) используется для объектов управления пользовательского интерфейса для поддержки систем анимации и привязки данных. В порядке. Это ясно.

Теперь, по ходу главы, мы обсудим присоединенное свойство. Основная причина его использования (как указано в книге, а также в Интернете) состоит в том, чтобы предотвратить создание подкласса и добавить прикрепленные свойства к рассматриваемому объекту. А поскольку присоединенные свойства уже являются свойствами зависимости, также добавляется присоединенное поведение.

Теперь вопрос: что мне делать? Что не так с подклассом? и действительно, почему при работе с прикрепленным свойством требуется много кода?


person Abdalrahman Shatou    schedule 15.08.2013    source источник


Ответы (1)


Теперь вопрос: что мне делать?

Давайте посмотрим на отличный пример - верстку.

Возьмите Grid класс. Если бы мы хотели поддержать это, каждый элемент управления должен был бы иметь свойство GridRow и GridColumn. Однако присоединенные свойства позволяют нам прикрепить Grid.Row к любому элементу управления, что, в свою очередь, позволяет Grid правильно размещать этот элемент управления внутри себя.

Все присоединенные свойства работают следующим образом - они позволяют вам «прикрепить» что-то, что определяет или помогает некоторым поведенческим характеристикам работать должным образом, без изменения самого «чего-то».

person Reed Copsey    schedule 15.08.2013
comment
Что ж, автор сказал то, что вы написали, но ваше очень ясно. Теперь я понимаю. Спасибо. - person Abdalrahman Shatou; 15.08.2013