2010-02-24 9 views

risposta

38

No. I comportamenti sono fondamentalmente solo un'astrazione molto più bella sulla parte superiore delle proprietà collegate.

Utilizzando Behavior<T>, è possibile accedere direttamente allo AssociatedObject, nonché alla possibilità di collegare e scollegare il comportamento, facilmente, in fase di esecuzione.

Si potrebbe fare questo con le proprietà allegate, ma sarebbe necessario aggiungere un sacco di tubature supplementari.

+0

Tuttavia, diventa difficile aggiungerli con uno stile. –

+1

In realtà ci sono alcune cose che non si possono fare con le proprietà allegate ... Ad esempio, sarebbe possibile aggiungere più istanze dello stesso comportamento, ma è possibile impostare una proprietà allegata solo una volta. OTOH, le proprietà associate hanno una sintassi più breve e possono essere utilizzate negli stili, il che è difficile con i comportamenti. –

+0

@ThomasLevesque è anche possibile definire una proprietà associata che aggiunge comportamenti a un determinato elemento dell'interfaccia utente e impostare tale proprietà in uno stile .. haha ​​=) –

2

I bari sono basati su proprietà associate. Ciò significa che se non si riesce a trovare un comportamento specifico, si scrive il proprio, sia in base al framework dei comportamenti fornito da Blend o creando il proprio AP ...

Sono sempre convinto che i comportamenti siano una grande prova del potere delle proprietà collegate. Incredibile cosa puoi ottenere con loro.

7

Tendo ad utilizzare i comportamenti per aggiungere funzionalità che apporti modifiche visibili. Mentre uso le proprietà associate per aggiungere informazioni aggiuntive a un oggetto che viene successivamente utilizzato da altri oggetti.

E.g. Grid.Row crea una buona proprietà associata, in quanto viene utilizzata dalla griglia e non dall'obiettivo. D'altra parte, Correzione automatica avrebbe un buon comportamento, in quanto ciò renderà le modifiche visibili sull'oggetto.

0

Questa non è la risposta. Ma la migliore spiegazione che posso trovare su questo argomento http://briannoyes.net/attached-behaviors-vs-attached-properties-vs-blend-behaviors/

Brian Noyes nei suoi articoli descrive chiaramente le differenze tra ciascuno dei concetti.

+0

Il collegamento fornito è danneggiato. –

+1

Ecco il link di lavoro http://briannoyesblog.azurewebsites.net/2012/12/20/attached-behaviors-vs-attached-properties-vs-blend-behaviors/ – lukeguy

Problemi correlati