gpt4 book ai didi

windows-phone-7 - 键盘处于事件状态时 ScrollViewer 不会向上滚动

转载 作者:行者123 更新时间:2023-12-04 07:07:27 24 4
gpt4 key购买 nike

我如何在 Windows Phone 中获得表单的行为,如设置 >> 移动网络 >> EditAPN。在此页面中,滚动查看器中有许多文本框。当用户点击任何文本框并获得焦点时,页面会向上滚动,标题保持不变并显示 SIP 键盘。当用户从这个文本框中失去焦点时,页面进入正常状态,SIP 键盘隐藏,标题保持不变。我想实现这种行为。我搜索了很多,但没有得到任何解决方案。
在 WP7 中看到滚动查看器的行为很奇怪。
任何帮助都将是巨大而可观的。
提前致谢。
注意:如果有任何棘手的解决方案,请提供示例代码。

这是我的示例代码。

<Grid x:Name="ContentPanel" Grid.Row="1" >
<ScrollViewer x:Name="Scroller">
<StackPanel Orientation="Vertical">

<TextBlock Text="Name"/>
<TextBox x:Name="txtName" />
<TextBlock Text="Email"/>
<TextBox x:Name="txtEmail"/>
<TextBlock Text="Phone"/>
<TextBox x:Name="txtPhone" />
<TextBlock Text="Adress"/>
<TextBox x:Name="txtAddress" />

</StackPanel>
</ScrollViewer>
</Grid>

当我尝试向下滚动时,它不会完全向下移动,并且似乎具有弹性。

编辑:
这个例子,我已经看过了,在我的情况下没有用。我有 4 个文本框,我的重点是第一个文本框,键盘出现并隐藏最后一个文本框。如果用户想要转到最后一个文本框并想要输入输入,它不会完全滚动并且具有弹性。对于这个用户必须按下屏幕的其他部分,然后他在最后一个框中输入。我在“设置”->“移动网络”->“EditAPN”中的 WP7 应用程序中看到了。有 4-5 个文本框,它们可以完美滚动。不知道 MSFT 使用了哪个控件或解决方法。

最佳答案

也许我错了,但为什么不使用简单的网格和列表选择器控件。为此,您将需要 Windows Phone 工具包 (Nuget Here)。

网格的第一行包含标题并且不会改变。
第二行包含您想要的内容( ScrollView 、列表选择器...)

这是一个非常基本的例子:

<phone:PhoneApplicationPage 
x:Class="PhoneApp3.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"
SupportedOrientations="Portrait" Orientation="Portrait"
shell:SystemTray.IsVisible="True">
<!--LayoutRoot is the root grid where all page content is placed-->
<Grid x:Name="LayoutRoot" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>

<!--TitlePanel contains the name of the application and page title-->
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock x:Name="PageTitle" Text="MY HEADER" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
</StackPanel>

<Grid x:Name="ContentPanel" Grid.Row="1">
<toolkit:ListPicker>
<toolkit:ListPickerItem Content="aaa" />
<toolkit:ListPickerItem Content="bbb" />
<toolkit:ListPickerItem Content="ccc" />
</toolkit:ListPicker>
</Grid>
</Grid>
</phone:PhoneApplicationPage>

编辑:

呈现 SIP 键盘时,PhoneApplicationFrame.TranslateTransform.Y 设置为特定值(横向 -259,纵向 -339)。要更新布局,我们只需将上边距设置为指定值(-s),然后 Silverlight 布局系统将修复该问题。

example可能会帮助你。

关于windows-phone-7 - 键盘处于事件状态时 ScrollViewer 不会向上滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14707496/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com