これに基づいて他のいくつかの質問を見てきましたが、Silverlightを扱うときに決定的な答えはありません。
私はSilverlight5とナビゲーションフレームワークを使用して、アプリケーションのさまざまな部分間を移動しています。私がやりたいのは、ユーザーがURLを更新したいアクションを実行するときに、アプリケーションへのディープリンクを提供することです。
呼び出すことでこれを実行できることはわかっていますNavigationService.Navigate
が、そうすることで、ユーザーがそのビューに直接更新できるようにするか、アドレスバーから直接リンクを保存できるようにするだけで、ページ全体とビューモデルが再初期化されます。
javascriptを使用してこれを実行できるはずですが、Silverlight内でこれを実行する方法があり、誰かが知っている場合は、そうしません。
さらなる解明
私のページの1つはレポートです。このレポートにはすでにページング機能があります。私は実際にページをリロードせずにURLを更新できるようにしたいと思って#MyReport?Page=2
います(私が言ったように、ページングはすでに処理されています)。何かをクリックするたびにページを完全にリロードせずに、OnNavigatingTo関数でクエリ文字列を処理するだけで済みます。これにより、ユーザーはそのURLをコピーして電子メールに入れるか、どこにでも入れたい場所に置くことができ、他のユーザーはそのURLに直接アクセスできます。