none
Cambiar el valor de una propiedad de un estilo desde un desencadenador de otro estilo RRS feed

  • Pregunta

  • Hola soy nueva en esto, neceistaría saber como podría llevar a cabo cambiar el valor de una propiedad de un estilo cuyo targetType es menuItem desde un desencadenador perteneciente a otro estilo cuyo targeType es menu.

    Es decir, lo que quiero conseguir, es que al pasar el ratón por e3ncima de un menu cambie el foreground color de los menusItems que contiene. "PERO al pasar por encima del menu, no por encima de los menusItems contenidos".

    Gracias    

    martes, 23 de agosto de 2011 10:40

Todas las respuestas

  • Hola Lunita

    Lo que me ha servido es esto:

    <Menu>
      <MenuItem Header="_Dispositivos" Style="{StaticResource Triggers}">
        <MenuItem Header="Detener" Tag="Stop" Foreground="Black" />
      </MenuItem>
    </Menu>
    
    <Style x:Key="Triggers" TargetType="{x:Type MenuItem}">
      <Style.Triggers>
        <Trigger Property="MenuItem.IsMouseOver" Value="true">
                <Setter Property = "Foreground" Value="Red"/>
        </Trigger>
      </Style.Triggers>
    </Style>
    


    Así el MenuItem "Dispositivos" va a cambiar su color a rojo pero el MenuItem "Detener" no lo va a hacer. El detalle es ponerle un color estático a los MenuItem que no quieres que se les cambie el color. Lo que te muestro aqui queda de esta forma:

    Espero te sirva

     

    Saludos


    Antonio Lobo
    Para el correcto funcionamiento, y que otros usuarios se puedan beneficiar de la solucion de esta pregunta por favor marca las respuestas que te hayan ayudado como "Respuesta".
    Si la respuesta te ha sido util Votala.
    Mi blog
    martes, 23 de agosto de 2011 12:53