我试图改变我的文本框的行为,以便当有人将鼠标悬停在它们上方时它们会改变它们的边框。同时,如果有人输入,我希望我的文本框保持绿色边框。我首先尝试将鼠标悬停在事物上并创建了这段代码:
<Style TargetType="{x:Type TextBox}">
<Style.Triggers>
<Trigger Property="TextBox.IsMouseOver" Value="True">
<Setter Property="BorderBrush" Value="Green"/>
<Setter Property="BorderThickness" Value="2"/>
</Trigger>
<Trigger Property="TextBox.IsMouseOver" Value="False">
<Setter Property="BorderBrush" Value="Black"/>
<Setter Property="BorderThickness" Value="1"/>
</Trigger>
</Style.Triggers>
</Style>
问题来自添加IsKeyboardFocused
事件的触发器。如果我添加这两个额外的触发器,除了悬停在零件上之外,一切都正常。所以如果我将鼠标悬停在它上面,我的文本框不会有绿色边框。
有没有办法解决这个问题或结合两个触发器,比如If IsMouseOver==true && IsKeyboardFocused == false then borderbrush = green
?
提前致谢!