Pregunta

Estoy tratando de crear un estado estacionario ratón que cambia su opacidad cuando un ratón se encuentra sobre el panel de pila.

He creado el estado, y ha creado un evento mouse_enter para el panel de pila, y en el código detrás de archivo cs, tengo el siguiente código en el evento Mouse_Enter.

MouseOver.Begin ();

Cuando al mover el ratón es el nombre de la Historieta, pero cuando el ratón se cierne sobre el panel de pila o incluso haga clic en el panel de pila, no pasó nada, lo que me estoy perdiendo?

Gracias

PlayKid

¿Fue útil?

Solución

Me di cuenta de mí mismo.

Con este código:

VisualStateManager.GoToState

Gracias a todos.

Otros consejos

¿Está seguro de que el evento se dispara (de haber conectado correctamente el evento)? Intente comprobar el uso de un cuadro de mensaje o algo así. (System.Windows.MessageBox.Show())

¿Está seguro el guión gráfico funciona bien en otras situaciones (probado en carga de la página o algo?)

Si tanto estos trabajos, por favor explique sobre cómo fue añadiendo el controlador de eventos.

En mi experiencia, conectando un evento Mouse_Enter al panel no funciona porque el contenido dentro del panel termina robando el evento. Mi solución habitual es la creación de un blanco transparente que cubre la zona que quiero para eventos de ratón y mantener ese elemento en la parte superior del árbol visual. Por lo que el XAML se ve algo como:

<StackPanel x:Name="ContentPanel" SizeChanged="ContentPanelSizeChanged" >
    < /*Some content here */ >
</StackPanel>
<Canvas x:Name="HitTarget" Mouse_Enter="HitTargetMouseEnter" />

Y a continuación, el controlador de ContentPanelSizeChanged establece el tamaño del lienzo HitTarget sea el tamaño real (prestado) de StackPanel. Lo mismo funciona para eventos MouseButtonDown y yo presumiría que funciona para eventos MouseWheel también. Recomiendo probar las sugerencias de solución de problemas de Senthil, pero si usted no puede conseguir el evento para disparar a todos (que yo presumiría es el problema), le daría prueba.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top