#c# #.net #wpf #triggers #styles
#c# #.net #wpf #триггеры #стили
Вопрос:
Я пытаюсь добавить OuterGlowBitmapEffect
эффект к TextBox
при наведении на него курсора мыши. Я использую триггеры. Вот некоторый код:
<TextBox Height="23" HorizontalAlignment="Left" Style="{DynamicResource TextBoxStyle}" Margin="12,283,0,0" Name="textBox1" VerticalAlignment="Top" Width="147" Text="" />
<Style x:Key="TextBoxStyle" TargetType="{x:Type TextBox}">
<Setter Property="FontSize" Value="14" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="BitmapEffect">
<Setter.Value>
<OuterGlowBitmapEffect GlowColor="Red" GlowSize="10"/>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
Но это не работает. Что я пропустил?
Комментарии:
1. Вы не должны использовать
BitmapEffect
.
Ответ №1:
Из документации BitmapEffect
:
[ObsoleteAttribute(«BitmapEffects устарели и больше не функционируют. Рассмотрите возможность использования эффектов там, где это уместно «.)]
Вы можете имитировать свечение, используя Effect
свойство с экземпляром DropShadowEffect
.
Ответ №2:
попробуйте это
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Effect">
<Setter.Value>
<DropShadowEffect BlurRadius="10" Color="Red" ShadowDepth="0"/>
</Setter.Value>
</Setter>
</Trigger>