2014-12-19 8 views
0

Я разрабатываю проект WPF. Я хочу удалить подсветку (это как синий на картинке) на кнопке, если isMouseHover кнопки - true. И я не уверен, что это называется подсветкой. Возможно, это эффект, фокус и т. Д. Я добавил, что BorderBrush прозрачен, но он не работает. Код выглядит следующим образом:Как удалить подсветку на кнопке, если IsMouseHover верен в wpf

<Image x:Key="LoginImg" Source="..\Images\Login\oturumac.png" 
     Stretch="Fill"/> 
<Image x:Key="LoginImg_RollOver" Source="..\Images\Login\oturumac_rollover.png" 
     Stretch="Fill"/> 

<Style x:Key="LoginButtonStyle" TargetType="{x:Type Button}"> 
    <Style.Triggers> 
     <Trigger Property="IsMouseOver" Value="True"> 
      <Setter Property="Content" Value="{DynamicResource LoginImg_RollOver}"/> 
     </Trigger> 
     <Trigger Property="IsMouseOver" Value="False"> 
      <Setter Property="Content" Value="{DynamicResource LoginImg}"/> 
     </Trigger> 
    </Style.Triggers> 
</Style> 

Изображение выглядит следующим образом. Первая картина, когда IsMouseOver верно:

enter image description here

Как я могу решить?

Button код выглядит следующим образом:

<Button Background="Transparent" BorderBrush="Transparent" Style="{DynamicResource LoginButtonStyle}" Click="btnLogin_Click" HorizontalAlignment="Center" VerticalAlignment="Top" Width="180" Grid.Column="1" Grid.Row="4" x:Name="btnLogin" TabIndex="2"/> 
+0

Я видел вопрос, который Шеридан упоминает, но я не могу решить. Потому что я не выбираю или не нажимаю кнопку. Только я нажимаю кнопку мыши. И вокруг кнопки выделяется. –

+0

Приношу свои извинения ... Я неправильно понял ваш вопрос и не понимал, что это «кнопка». Я снова открыл ваш вопрос. Вам нужно будет показать свой код для кнопки «Button», чтобы мы могли решить, что вы сделали неправильно. Кажется, что вы меняете свойство Content, когда вы действительно хотите изменить цвет «Background»? – Sheridan

+0

Я хочу изменить только изображение. Но кнопка подсвечивается. Фон и BorderBrush прозрачны –

ответ

2

Вы должны будете предоставить новый ControlTemplate для Button, чтобы избавиться от взгляда по умолчанию и чувствовать. Вы можете просто заменить по умолчанию Button ControlTemplate простым Image и заменить Style Trigger с ControlTemplate Trigger с. Попробуйте следующее:

<Button> 
    <Button.Template> 
     <ControlTemplate> 
      <Image Name="Image" Stretch="None" 
Source="pack://application:,,,/AppName;component/Images/Login/oturumac.png" /> 
      <ControlTemplate.Triggers> 
       <Trigger Property="IsMouseOver" Value="True"> 
        <Setter TargetName="Image" Property="Source" Value=" 
pack://application:,,,/AppName;component/Images/Login/oturumac_rollover.png" /> 
       </Trigger> 
      </ControlTemplate.Triggers> 
     </ControlTemplate> 
    </Button.Template> 
</Button>