2012-03-21 11 views
0

私は質問があります:私はInvalidOperationExceptionを取得し続ける:要素はWP7でスローされた別の要素の子です。これは、表示要素にUIElementを複数回追加しようとすると発生します。リッチテキストボックス内の段落に複数の静的メンバーを追加するので、これは意味があります。したがって、静的メンバーをもう一度追加してdisplayElementに追加すると、この例外が発生します。しかし、OnNavigatingFromメソッドでは、段落内の項目のリスト全体をクリアするので、リストには含めないでください。例外は表示されません。他の非静的メンバーはこの例外を表示しません。誰もが何か提案がありますか?なぜ私はInvalidOperationException WP7を取得し続ける

private static Hyperlink websiteHyperLink = new Hyperlink(); 
method: 
if (NavigationContext.QueryString.TryGetValue(key, out value)) 
     { 
      Bold bold = new Bold(); 

      bold.Inlines.Add(UsedLanguage.cv_page_website); 
      websiteHyperLink.Inlines.Add(website); 
      websiteHyperLink.TargetName = website; 
      websiteHyperLink.Click += new RoutedEventHandler(OpenBrowserClient); 

      mParagraph.Inlines.Add(bold); 
      mParagraph.Inlines.Add(websiteHyperLink); 
      mParagraph.Inlines.Add("\n"); 
     } 
protected override void OnBackKeyPress (System.ComponentModel.CancelEventArgs e) 
     { 
      mParagraphs.Inlines.Clear(); 
      base.OnBackKeyPress (e); 
     } 
+0

コードを投稿する必要があります。 – ken2k

+0

OK、コードを追加しました – GeekPeek

答えて

1

OnBackKeyPressでこれを行わないでください。これはすべてのケースを処理しません。

NavigationMode(イベント引数内)が "戻る"に設定されているときに、OnNavigatedFrom()[あなたのテキストが示すものだがコードではない]オーバーライドでクリアコードを実行します。

また、OnNavigateTo()は、同じインスタンス上で複数回呼び出すことができます(たとえば、その中に戻るときなど)。 - 項目を既に追加したかどうかを示すローカル変数を持ちます。それをもう一度打つ。

明確な質問:同じページを何度も読み込むのですか、1回だけ読み込むのですか?

関連する問題