Pergunta

Estou lendo WPF Recipes em C # 2008:

http://www.apress.com/book/view/9781430210849

e começando no terceiro receita que asssume você sabe como propriedades de dependência trabalho.

Então, depois de um pouco de googling, eu entendo em geral que estas são propriedades de um objeto que, quando colocados dentro de outro objeto "se adapta ao contexto" para o objeto de host. Eu também "aprendeu" que "você nunca sabe o que o valor dessas propriedades são, uma vez que dependem de seu contexto".

Mas, ainda assim, muito do que está sendo descrito nas folhas do livro me com nenhuma idéia de como eu poderia usá-los na construção de aplicações.

Quem tem uma boa metáfora ou exemplo de propriedades de dependência para as pessoas começando com eles e querem saber quando e como eles iriam usá-los?

Foi útil?

Solução

As propriedades de dependência são como propriedades normais, exceto que eles têm alguns "ganchos" especial que usa WPF.

Uma coisa especial é que, por vezes, se você não definir um valor de propriedade que receberá seu valor do controle é colocado em (por isso, se você definir o tipo de letra para um botão, o bloco de texto dentro do botão irá utilizar este tipo de letra a menos que especificado uma fonte diferente para o bloco de texto), eu assumo esta é a fonte de todos os "nunca se sabe o valor" nonsense.

Se você estiver escrevendo um controle WPF você provavelmente deve usar propriedades de dependência, porque você pode especificar se as alterações devem automaticamente causa o controlo para re-tornar-se (e mais) e você pode usá-los para a ligação de dados.

Se você estiver escrevendo uma classe derivada de Freezable (direta ou indiretamente), utilizando apenas as propriedades de dependência vai lhe poupar algum trabalho.

Se você estiver escrevendo uma classe que não é específico WPF, então provavelmente não há razão para propriedades de utilização de dependência.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top