xaml - 实现Windows Phone搜索界面

标签 xaml search windows-phone-8 windows-phone

我环顾四周,但找不到关于如何为 Windows Phone 应用程序实现搜索覆盖的良好引用。我想模拟搜索在商店、音乐和其他系统类型应用程序中的实现方式。

我使用该图标创建了应用程序栏,但不确定单击该按钮时会发生什么。看起来有些覆盖层已过渡到页面顶部。我可以模仿这一点,但由于这似乎是一个常见的场景,我希望有一个指南来实现跨应用程序的一致体验。

  1. 带有搜索按钮的应用程序栏:https://skydrive.live.com/redir?resid=1EBF644EEFCAD766!25155&authkey=!AB2pGcqFd9jo4JE
  2. 叠加:https://skydrive.live.com/redir?resid=1EBF644EEFCAD766!25156&authkey=!ALmHpcgyqYyvBfU

最佳答案

没有官方控件可以为您执行此操作。在我的应用程序中,我执行以下操作来覆盖此场景:

1 - 将搜索按钮添加到应用程序栏

2 - 单击按钮时,导航到新页面(例如 SearchPage.xaml):

NavigationService.Navigate(new Uri("/SearchPage.xaml", UriKind.Relative));

3 - 将焦点设置到该页面上 Loaded 事件中的搜索框以打开键盘(例如,在 OnNavigedTo 中执行此操作将不起作用):

mySearchTextbox.Focus();

4 - 使用Silverlight Toolkit for Windows Phoneadd transitions from/to the page 。我使用以下动画,它创建了与内置搜索页面非常相似的动画风格:

<toolkit:TransitionService.NavigationInTransition>
    <toolkit:NavigationInTransition>
        <toolkit:NavigationInTransition.Forward>
             <toolkit:SlideTransition Mode="SlideUpFadeIn" />
        </toolkit:NavigationInTransition.Forward>
        <toolkit:NavigationInTransition.Backward>
            <toolkit:SlideTransition Mode="SlideUpFadeIn" />
        </toolkit:NavigationInTransition.Backward>
    </toolkit:NavigationInTransition>
</toolkit:TransitionService.NavigationInTransition>

<toolkit:TransitionService.NavigationOutTransition>
    <toolkit:NavigationOutTransition>
        <toolkit:NavigationOutTransition.Backward>
            <toolkit:SlideTransition Mode="SlideDownFadeOut" />
        </toolkit:NavigationOutTransition.Backward>
        <toolkit:NavigationOutTransition.Forward>
            <toolkit:SlideTransition Mode="SlideDownFadeOut" />
        </toolkit:NavigationOutTransition.Forward>
    </toolkit:NavigationOutTransition>
</toolkit:TransitionService.NavigationOutTransition>

关于xaml - 实现Windows Phone搜索界面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15652922/

相关文章:

windows-phone-7 - Windows Phone 7.5/8 - 支持多个品牌的最佳方式

xaml - 如何在 Windows 应用商店应用程序中启用选择和项目单击

c# - MahApps DataGridCell 样式

java - 搜索 map 或列表

multithreading - 编写搜索引擎

javascript - Phonegap Windows Phone 8 自定义网络字体

c# - 如何从代码隐藏更改 VisualBrush 中使用的 StaticResource 以响应正确的用户输入?

xaml - 在 WP7 上用 XAML 格式化日期

search - 使用 Drupal 进行高级搜索( View 和 CCK)

c# - AdControl 错误 : No ad available. 在 Microsoft Advertising for mobile 中