我正在Visual Studio 2013中使用WPF和VB.net开发一个应用程序。此应用程序可在带有触摸屏显示器的计算机上运行。
我的开发PC运行的是windows 7,但是将要运行这个应用程序的计算机使用的是windows 10。我不知道这是Windows 10特有的问题还是触摸界面的问题。
我遇到的问题是当使用触摸屏监视器时,触摸控件后会突出显示控件。我不知道如何自动删除这个高光。我试图改变焦点和/或设置可聚焦属性为false。要阻止控件被高亮显示,唯一的方法是触摸屏幕上的其他地方。
但是在Windows 7中使用鼠标,我可以改变焦点,并将focusable属性设置为false;控件根本不接收焦点。
这个程序是在没有键盘(物理或虚拟)或鼠标的情况下使用的。在我看来,突出显示控件是不可取的。
如果您能告诉我如何删除高亮或完全防止高亮,我将不胜感激。
所有的按钮都是高亮显示,而光标是在他们,如果你想,你可以禁用高亮,但它将永远禁用。要做到这一点,创建一个自定义样式,并给你的按钮,我给你一个例子:
<Window.Resources>
<Style x:Key="CloseButtonStyle" TargetType="Button">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="Margin" Value="5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Name="border"
BorderThickness="1"
Padding="4,2"
BorderBrush="Transparent"
Background="{TemplateBinding Background}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="border" Property="Background" Value="Red" />
<Setter TargetName="border" Property="BorderBrush" Value="Transparent" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
这段代码将删除按钮的高亮部分,并在您用光标输入按钮时将其背景更改为红色。要将它添加到按钮中,请这样做:
<Button x:Name="CloseButton" Style="{StaticResource CloseButtonStyle}" />
希望有帮助