none
一个BUTTON控件的问题(win8_VS2012_grid app) RRS feed

  • 问题

  • 我通过这段代码定义了一个TEXTBOX和BUTTON控件来模拟SEARCHBOX,那么如何使BUTTON控件生效?达到点击后能够显示搜索结果的目的?可否进行详细说明,如何定义这个BUTTON控件?使得能够准确搜到搜索内容?

                <TextBox x:Name="txtSearch" Grid.Column="1" HorizontalAlignment="Left" Margin="862,65,0,0" TextWrapping="Wrap" Text="搜索引擎(beta)" VerticalAlignment="Top" Width="270"/>
                <Button Content="&#xE11A;" Grid.Column="1" HorizontalAlignment="Left" Margin="1129,62,0,0" VerticalAlignment="Top" FontFamily="Segoe UI Symbol" Height="38" Click="Button_Click_1"/>
    

    2014年1月21日 7:06

答案

  • 请看一下这个帖子: http://social.msdn.microsoft.com/Forums/zh-CN/b46cabc2-fad2-426d-a731-0511b38d544b/grid-app?forum=winstoreappzhcn

    您要做的就是点击搜索按钮的时候使用

    this.Frame.Navigate(typeof(BasicPage2));

    这种方式来进行页面跳转,关于跳转,请参考:http://msdn.microsoft.com/zh-cn/library/windows/apps/hh771188.aspx

    =====

    我看您最近的问题都是关于想自己做一个搜索对吧,但是搜索的逻辑相当复杂,需要大量代码在后台支持,也正是因为这个原因,所以我们根本看不到Search Contract的代码,想一想百度搜索岂是用几十行代码写出来的? 我提供的TextBox是基于你已经有这么一套搜索逻辑的前提,把可以被搜索到的内容放在TextBox里面进行一个筛选,这种方式做起来会相当的麻烦。

    另外Anne Jing版主和我也多次建议您直接使用系统的Search Contract。谢谢。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.


    2014年1月24日 1:06
    版主

全部回复

  • HI DNA,

    为什么你不想用SearchBox呢?SearchBox其实是一个基于TextBox的扩展,所以他具有了TextBox的一些基本属性以及TextBox没有的搜索功能,而搜索功能是基于Search Contract的一系列系统内置代码。

    如果你想精确查找,可以对自己的App做一个索引,通过Dictionary<k,V>的方式把你想要被用户找到的内容放置进去,Button click事件可以触发一个LinQ的查询,达到你想要的效果。

    如果你仅仅是觉得SeachBox不好看什么的,那你可以修改一下SearchBox的样式,但是内置的代码我们没有权限修改,也没有权限查看。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    2014年1月21日 9:16
    版主
  • 谢谢您!那我上图中所示的TEXTBOX,如何使其能够在输入时实现自动提示功能?我仅仅使用了这两行代码就绘制出了这个UI,那么这个自动提示功能又应该在哪里编写代码来实现?这个控件目前在ITEMDETAILPAGE.XAML中,请您指导!!谢谢,我希望做出一个能够自动提示的TEXTBOX,谢谢您!!!希望给出详细代码编写数据。
    2014年1月22日 15:56
  • Hi DNA,

    自动提示功能?同学我记得已经说过好多次了,目前搜索有两种办法来做:

    1,使用系统自带的Search Contract来实现,这里面的代码是不可访问的。

    2,您自己制作一个可用于被搜索的词汇表,进行搜索,我记得之前我已经给过你一份带提示功能的TextBox代码,你可以使用那份代码,按照我的方法一样手动把内容添加进去,当用户输入某些字符并敲下回车的时候,转到相应的页面。

    我建议为了简便,你可以使用系统自带的Search Contract来协助搜索,这样你也可以省去编码的时间。比如说你在你的框中输入了搜索的内容,点击按钮,然后调用SearchPane 中 Show(String)  的功能,可以打开系统的Search Pane,这时候可以进行搜索,也相当于省了你一个步骤。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    2014年1月23日 7:08
    版主
  • 对不起,您真的没有给过我一段带提示功能的TEXTBOX代码,能否麻烦您给我一下这些代码?我需要的就是这些!非常感谢您!!我不是学习程序的人,也没有书本,一直在网上看视频,所以好多东西都不懂。能否麻烦您给我这些带提示功能的TEXTBOX代码,并当用户敲下回车或者点击这个BUTTON控件时转到相应的页面,并告诉我应该放的正确位置??谢谢您!!!
    2014年1月23日 13:37
  • 请看一下这个帖子: http://social.msdn.microsoft.com/Forums/zh-CN/b46cabc2-fad2-426d-a731-0511b38d544b/grid-app?forum=winstoreappzhcn

    您要做的就是点击搜索按钮的时候使用

    this.Frame.Navigate(typeof(BasicPage2));

    这种方式来进行页面跳转,关于跳转,请参考:http://msdn.microsoft.com/zh-cn/library/windows/apps/hh771188.aspx

    =====

    我看您最近的问题都是关于想自己做一个搜索对吧,但是搜索的逻辑相当复杂,需要大量代码在后台支持,也正是因为这个原因,所以我们根本看不到Search Contract的代码,想一想百度搜索岂是用几十行代码写出来的? 我提供的TextBox是基于你已经有这么一套搜索逻辑的前提,把可以被搜索到的内容放在TextBox里面进行一个筛选,这种方式做起来会相当的麻烦。

    另外Anne Jing版主和我也多次建议您直接使用系统的Search Contract。谢谢。

    --James


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.


    2014年1月24日 1:06
    版主