none
Metro Search 合约问题 RRS feed

  • 问题

  • HI,

         在学习搜索合约时,添加了    

       SearchPane.GetForCurrentView().SuggestionsRequested += App_SuggestionsRequested这个事件并实现

        public App()
            {

                this.InitializeComponent();
                this.Suspending += OnSuspending;
                SearchPane.GetForCurrentView().SuggestionsRequested += App_SuggestionsRequested;
            
            }

      void App_SuggestionsRequested(SearchPane sender, SearchPaneSuggestionsRequestedEventArgs args)
            {
                args.Request.SearchSuggestionCollection.AppendQuerySuggestion(“胜多负少”);
            }

    但运行模拟器时,出现如下错误

    找不到元素。 (异常来自 HRESULT:0x80070490) ; 请帮助

    2012年11月12日 13:37

答案

  • 不是模拟器运行有问题吗?

    你应该写在 protected override void OnWindowCreated(WindowCreatedEventArgs args) 这个方法中。


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    • 已标记为答案 maming123 2012年11月14日 2:27
    2012年11月13日 5:10
    版主

全部回复

  • 不是模拟器运行有问题吗?

    你应该写在 protected override void OnWindowCreated(WindowCreatedEventArgs args) 这个方法中。


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    • 已标记为答案 maming123 2012年11月14日 2:27
    2012年11月13日 5:10
    版主
  • HI,

         你应该写在 protected override void OnWindowCreated(WindowCreatedEventArgs args) 这个方法中

        完全正确,谢谢!

       protected override void OnWindowCreated(WindowCreatedEventArgs args)
            {
                base.OnWindowCreated(args);
                SearchPane.GetForCurrentView().SuggestionsRequested += App_SuggestionsRequested;
            }

      成功,现在思考一下,也应该是样,这应该是初始化的顺序的问题吧,在这里才可以找到SearchPane元素。

    2012年11月14日 2:26