[英]Software Keyboard Dissapears from screen when PasswordBox given focus
我在頁面上設置了一個PasswordBox,試圖將其設置為導航到該頁面時自動具有焦點。
我遇到的問題是,當我以編程方式使其聚焦時,它可以接受聚焦,但是鍵盤消失了。
這會導致出現問題,因為用戶必須單擊“密碼框”,然后再使用該控件。
我試過將此代碼添加到頁面的Loaded事件,ContentGrid.Loaded,OnNavigatedTo中,並且它們都產生相同的結果。
我嘗試設置頁面的TabIndex / IsTabStop以及控件本身,但是它似乎不起作用。 密碼框是唯一具有TabIndex的項目。
<PasswordBox x:Name="pwbAnswer" Style="{StaticResource PasswordBoxStyle}" VerticalAlignment="Top" Grid.Row="3"
PasswordChanged="pwbAnswer_PasswordChanged" KeyUp="pwbAnswer_KeyUp" TabIndex="1" IsTabStop="True" />
private void ContentGrid_Loaded(object sender, RoutedEventArgs e)
{
this.IsTabStop = true;
pwbAnswer.Focus();
}
您必須使用PasswordBox的Loaded事件。 我有同樣的問題。 然后,如果您附加了該加載事件,則可以將焦點設置為發件人,也就是PasswordBox本身。
<PasswordBox x:Name="pwbAnswer" Style="{StaticResource PasswordBoxStyle}" VerticalAlignment="Top" Grid.Row="3"
Loaded="PasswordBox_Loaded" PasswordChanged="pwbAnswer_PasswordChanged" KeyUp="pwbAnswer_KeyUp" TabIndex="1" IsTabStop="True" />
private void PasswordBox_Loaded(object sender, RoutedEventArgs e)
{
PasswordBox box = sender as PasswordBox;
box.Focus();
}
或者您可以將解決方法與LayoutUpdated事件一起使用。
<Page .... LayoutUpdated="ContentGrid_LayoutUpdated">
<PasswordBox x:Name="pwbAnswer" Style="{StaticResource PasswordBoxStyle}" VerticalAlignment="Top" Grid.Row="3"
KeyUp="pwbAnswer_KeyUp" TabIndex="1" IsTabStop="True" />
private void ContentGrid_LayoutUpdated(object sender, RoutedEventArgs e)
{
this.IsTabStop = true;
pwbAnswer.Focus();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.