当Windows Phone应用程序中显示软键盘时,有没有办法阻止屏幕向上移动?
我有一个位于屏幕上半部分的文本框,因此当显示软键盘时,它不会覆盖文本框。但是,当点击文本框时,屏幕仍然会向上移动。
这可以预防吗?
答案 0 :(得分:7)
我花了很多时间试图找到解决方案 - 在我的情况下,我希望页面标题保持在屏幕的顶部,而不是在键盘打开时滚动。
我发现的最好的解决方案是在下面的帖子中描述的解决方案,该解决方案使用框架的TranslateTransform(由键盘打开/关闭触发)中的更改来更改上边距的大小,从而更改可用内容的空间。
http://sorokoletov.com/2011/08/windows-phone-70-handling-text-entry-screens/
如果您的屏幕上有许多元素,您可能需要考虑明确更改布局以适应更小的空间。
答案 1 :(得分:3)
我不相信在键盘打开时有一种简单的方法可以改变滚动位置。虽然我可以想到几个解决方法:
将所有内容放在滚动查看器中,当调用文本框focusevent时,使用ScrollToVerticalOffset()
使用translate转换的X组件在屏幕上移动文本框。有一篇很好的博客文章来自Alex Sorokoletov。
答案 2 :(得分:3)