2

我正在使用 Windows 8、VS2012、C# 和 XAML 创建这个测试 Metro 应用程序。在应用程序页面中有不同TextBox的排列方式StackPanel。启动应用程序时,焦点位于第一个TextBox.

我想知道如何“停用”它。

这是一张图片,您可以看到第一个字段已聚焦(颜色已更改并显示工具提示)。

在此处输入图像描述

4

2 回答 2

1

加载 UI 后,您可以TextBox通过将Programmatic焦点状态应用于任何其他控件来移除焦点。

假设您有一个Button名为 myButton。你可以:

myButton.Focus(FocusState.Programmatic);

但是,您不能使用FocusState.Unfocused状态从 TextBlock 中移除焦点,因为它是不允许的并且会引发异常。

于 2013-05-29T15:44:06.290 回答
0

一个简单的解决方法是先用IsTabStop="True"0放置一些东西来捕捉它,Opacity这有点 hacky 但我知道的唯一方法。所以像;

<TextBox IsTabStop="True" Opacity="0" Height="1" Width="1"/>
<!-- Then the rest of your content like your other TextBox stuff -->
于 2013-05-29T15:43:52.760 回答