【发布时间】:2013-01-23 22:52:07
【问题描述】:
在我的 Windows 应用商店应用程序中,我创建了一个 ScrollViewer(里面有一个 Grid),里面有几个 TextBox。每当用户单击 ScrollViewer 中的任何位置时,都会聚焦第一个 TextBox。我不知道为什么会发生这种情况,而且这肯定不是我想要的行为。
这只是 XAML 试图“提供帮助”的一个症状吗?如何预防?
编辑:我找到了线索。这只发生在我的文本框位于 ScrollViewer 内时。它也出现在 C++ 和 C# 项目中,因此它显然是 XAML/WinRT 的症状。添加示例 XAML:
使用以下 XAML,如果我聚焦第二个 TextBox,然后单击框之间边缘的任意位置,则第一个 TextBox 会自动聚焦。我不希望它被集中。
<ScrollViewer Background="#111111"
VerticalScrollBarVisibility="Auto">
<Grid>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<TextBox Grid.Row="0" />
<TextBox Grid.Row="1" />
</Grid>
</ScrollViewer>
【问题讨论】:
-
"带有几个文本框的边框"??一个边框只能有一个子元素...你能分享你的 XAML 代码吗?
-
对不起,我应该更具体。这是一个带有网格的边框,其中有几个文本框分布在不同的单元格中。我将编辑我的问题以澄清。
-
我现在已经发布了我的 XAML 以及一条新线索 - 看起来只有当 TextBox 位于 ScrollViewer 中时才会发生这种情况。
标签: windows xaml windows-runtime