2011-08-16 137 views
3

私はWPF XBAPアプリケーションをWPFデスクトップアプリケーションに変換しています。私はそれをデスクトップ上で実行しているが、今はウィンドウリファレンスへのページ参照を変更しようとしている。WPFルート要素がナビゲーションに無効です

'MyApp.StartForm' root element is not valid for navigation. 

私はこのアプリの簡易版を作成し、それを変換しようとしたが、これは正常に動作しますので、ウィンドウのタグを使用している場合、これを引き起こしているXAML内で何かがなければなりません。私の質問は、私がこれをどのように調べることができるかということです。現在のところ、このエラーは "No Source Available"画面と一緒に表示されます。スタック位置は表示されず、「Show Disassembly」は機能しません。 XAMLが機能するまで、個々のチャンクを体​​系的にコメントアウトする以外に、この問題の解決方法はありますか?

答えて

5

WPFアプリケーションでのナビゲーションは、ページ間でのみ行うことができます。エラーは、現在のウィンドウにナビゲートしようとしているために表示されますが、これは不可能です。

ページをウィンドウに変換する代わりに、Frameコントロールを含む新しいウィンドウを作成します。 Frameを使用して、既存のページをホストすることができます。既存のページはそのままで、Windowsには変更しないでください。

5

それはフレームウィンドウをホストすることができないことに関するその完全に正確ではない、次のコードは、あなた

public void HostWindowInFrame(Frame fraContainer, Window win) { 
     object tmp = win.Content; 
     win.Content = null; 
     fraContainer.Content = new ContentControl() { Content = tmp }; 
    } 
0

のためにそれを行いますStartFormがルート要素や他のいくつかの他のように、ページを持っ確認してください。私は同じことをしています。私はナビゲートしなければならないページをチェックしています。私はそのページをウィンドウとして宣言します。

関連する問題