fip*_*n88 1 c# xaml focus autosuggest windows-10-mobile
我有一个AutoSuggestBox只在我点击一个按钮时显示.当AutoSuggestBox变得可见时,它也应该获得焦点.
我尝试了很多方法,但没有一个工作.
我的代码:
<AutoSuggestBox x:Name="AutoSearchBar"
HorizontalAlignment="Right"
VerticalAlignment="Center"
PlaceholderText="Text to find"
Visibility="Collapsed"/>
<Button x:Name="searchButton"
Visibility="Visible"
HorizontalAlignment="Right"
FontFamily="Segoe MDL2 Assets"
Background="Red"
Content=""
Click="searchButton_Click"/>
Run Code Online (Sandbox Code Playgroud)
代码背后:
private void searchButton_Click(object sender, RoutedEventArgs e)
{
AutoSearchBar.Visibility = Visibility.Visible;
searchButton.Visibility = Visibility.Collapsed;
}
Run Code Online (Sandbox Code Playgroud)
我试图把它放在代码隐藏中searchButton_Click,但AutoSearchBar控件只出现而且没有集中.
AutoSearchBar.Focus(FocusState.Keyboard);
AutoSearchBar.Focus(FocusState.Pointer);
AutoSearchBar.Focus(FocusState.Programmatic);
Run Code Online (Sandbox Code Playgroud)
有时XAML for Windows 10(和8.1 RT)表现得很奇怪.引入一小段延迟通常可以解决问题.我试图通过任务工厂运行它,它可以在我的机器(TM)上运行.
private void searchButton_Click(object sender, RoutedEventArgs e)
{
searchButton.Visibility = Visibility.Collapsed;
AutoSearchBar.Visibility = Visibility.Visible;
// slightly delay setting focus
Task.Factory.StartNew(
() => Dispatcher.RunAsync(CoreDispatcherPriority.Low,
() => AutoSearchBar.Focus(FocusState.Programmatic)));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1638 次 |
| 最近记录: |