Eseguire programmaticamente il comportamento di un Behavior in Silverlight 4.0
I Behavior hanno reso possibile il riutilizzo di porzioni di codice, anche complesse, con pochi e semplici passaggi.
Tuttavia, può capitare l'esigenza in cui sia necessario richiamare programmaticamente il comportamento del Behavior: in questi casi la prima cosa da fare è recuperare i Behavior associati ad un oggetto e, successivamente, richiamarne uno dei membri.
Per recuperare tutti i Behavior associati ad un oggetto possiamo usare la classe Interaction (namespace System.Windows.Interactivity) e passare al metodo GetBehaviors l'oggetto interessato.
((MyBehavior)Interaction.GetBehaviors(MyTexBox).Last()).MyMethod();
Nello snippet precedente abbiamo recuperato l'ultimo Behavior associato alla TextBox (chiamata MyTexBox) e abbiamo richiamato il metodo MyMethod.
Poter recuperare i Behavior associati ad un oggetto programmaticamente è utile in tutti quei casi nei quali è impossibile determinare le condizioni di esecuzione di un Behavior, semplicemente solo con l'ausilio delle opzioni del behavior stesso, gestibili attraverso l'interfaccia di Expression Blend.







