Viewbox not firing events, Silverlight 4

En un dels projectes que estic desenvolupo amb Silverlight 4. Una pantalla està construïda per un Viewbox que té un Canvas. Dins el canvas tinc usercontrols.

<viewbox onMouseLeftUp="viewbox_mouseleftup" onmouseenter="viewbox_mouseenter">
<viewbox.resources>
<storyboard onCompleted="story_completed"/>
</viewbox.resources>
<canvas>
<usercontrol:myControl onMouseLeftUp="myControl_mouseleftup">
</canvas>
</viewbox>

El comportament és correcte la primera vegada que es carrega la pàgina. El mouseLeftUp es captura al MyControl i es propaga cap al ViewBox per bubbling i es torna a capturar a viewbox_mouseleftup. El clic del mouse comença l’animació i quan acaba es llença i captura l’event completed. Quan el mouse entra a la zona del viewbox aquest és capturat correctament per Viewbox_mouseenter.

El problema està quan es torna a carregar, ja sigui per un refresc (f5) o per una navegació provocada. Els events del Viewbox i del storyboard que son recursos del Viewbox no es capturen. El dels usercontrols que estan dins el canvas si.

He buscat i buscat per internet alguna possible solució al problema i no he trobat ningú que l’hi hagi passat alguna cosa similar.

La solució per mi ha sigut registrar els events per codi i no per XAML.

viewbox.mouseleftup+=viewbox_mouseleftup;
viewbox.mouseenter+=viewbox_mouseenter;
(viewbox.resources["storyboard1"] as Storyboard).completed=storyboard_completed;

Suposo que deu ser algun bug del Silverlight. Però no ho puc assegurar.

Em pots ajudar tu? saps què pot ser?

Anuncis

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out / Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out / Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out / Canvia )

Google+ photo

Esteu comentant fent servir el compte Google+. Log Out / Canvia )

Connecting to %s