我正在开发一个页面,我有些疑惑。 我的项目适用于Windows 10 Mobile。在我正在开发的页面上,当文本框具有焦点时,手机键盘向上,我得到其余的隐藏元素,并且不允许我滚动页面以查看所有元素。
Ja走在互联网上,但我看到解决方案依赖于确保我的StackPanel的尺寸大于我的ScrolViewer,但我也不需要它。 例如ScrollViewer Width = 500 ... StackPanel Width = 700
当键盘打开时,希望能够看到所有元素,进行滚动。
按照我的代码:
<ScrollViewer x:Name="ScrollViewerTest VerticalAlignment="Top">
<StackPanel Orientation="Vertical" Margin="10,10,10,10">
<TextBox x:Name="txtUserNameMobile" IsSpellCheckEnabled="False"
Background="Black" Foreground="White"
PlaceholderText="Insert your text"
/>
<Button x:Name="btnHere"
Content="btnHere"
Height="48"
Width="150">
<Button x:Name="btnHere2"
Content="btnHere2"
Height="48"
Width="150">
<Button x:Name="btnHere3"
Content="btnHere3"
Height="48"
Width="150">
<Button x:Name="btnHere4"
Content="btnHere4"
Height="48"
Width="150">
<Button x:Name="btnHere5"
Content="btnHere5"
Height="48"
Width="150">
</StackPanel>
</ScrollViewer>
有人可以帮助我吗?
答案 0 :(得分:0)
可以覆盖<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="wrapper">
<ul class="partners__ul">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
<li>Item 6</li>
<li>Item 7</li>
<li>Item 8</li>
<li>Item 9</li>
<li>Item 10</li>
<li>Item 11</li>
<li>Item 12</li>
</ul>
<button class="partners__button__a">Show More</button>
</div>
焦点上页面的默认滚动行为,并且可以添加自定义逻辑以在显示键盘时显示焦点TextBox
。使用此方法,可以在键盘打开时滚动TextBox
。
ScrollViewer
InputPane.GetForCurrentView().Showing += InputPane_Showing;
private void InputPane_Showing(InputPane sender, InputPaneVisibilityEventArgs args)
{
args.EnsuredFocusedElementInView = true; //This will prevent the auto scroll of the page.
}
将提供与键盘相关的属性,如高度,顶部位置等。如果隐藏在键盘后面,这些值可用于将args.OccludedRect
移动到所需位置。