请考虑以下XAML:
复制
在它中,我有一个在水平模式下工作的FlipView。我想在FlipView中显示的内容太大了--这就是为何我在FlipViewItem模板中添加了一个ScrollViewer,以便用户可以垂直滚动(请注意,FlipView模板在内部使用水平ScrollViewer )。
FlipView显示的内容包含例如文本框之类的输入控件,很明显,当用户点击文本框时,软键盘都会显示下来(这样它还会有焦点)。
这里是我的实际问题:为什么文本框没有被翻译成没有被软键盘盖住的剩余的视图端口(见图片)
显然,这与FlipView有关,因为当我只在ScrollViewer中显示示例视图(甚至根本没有ScrollViewer )时,当软键盘弹出时,文本框将被正确翻译。
我早已尝试了以下步骤
我企图在FlipView模板中的ScrollViewer上启用垂直滚动--这不起作用,因为FlipView虽然覆盖了OnApplyTemplate (或其他哪些)中对应的值--当FlipView‘VirtualizingStackPanel上的方向设置为水平时,VerticalScrollMode被禁用。如前所述,我企图在ScrollViewer中显示完全相同的视图(它工作得挺好),甚至没有ScrollViewer (它也挺好)。我也会检测ScrollViewer.BringIntoViewOnFocusChanged,但这不会改变任何事情(此外,该属性的默认值设置为true)。
有哪些办法可以回避这个问题吗?非常谢谢您的提早帮助!