在我的Windows应用商店应用中,我创建了一个ScrollViewer(里面有一个Grid),里面有几个TextBox。每当用户点击ScrollViewer中的任何位置时,第一个TextBox就会聚焦。我不知道为什么会这样,而且肯定不是我想要的行为。
这只是XAML试图“有帮助”的症状吗?我该如何预防?
修改:我发现了一个线索。这只发生在我的TextBoxes在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>
答案 0 :(得分:6)
找到解决方案!设置ScrollViewer的TabStop="true"
会阻止此行为。