2012-01-13 5 views
2

でSilverlightアプリケーションでaspxページを埋め込む:は、一言で言えば、別のページ

はどのように動的に別のページ(Default.aspx)でaspxページ(MyAppHost.aspx)を埋め込むこと。

私は動的グラフィック(ビットマップ)を作成する必要があったページDefault.aspxの選択に基づいて:MyAppHost.aspxは、より詳細にはAppHost.aspx

からクエリ文字列を読み込み、Silverlightアプリケーションをホストします。

Image1.ImageUrl = "~/MakeImage.aspx?param1=" + 
Param1.ToString() + "&param2=" Param2.ToString(); 

MakeImage.aspxで::これは正常に動作している

image.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg); 

私はとしてはDefault.aspx.csに、以下に示すことにしました。私はグラフィックを生成するためにSilverlightを利用するプロジェクトに変更を加えました。私のSilverlightアプリケーションは、テスト(デフォルト)aspxページ(MyAppHost.aspx)に埋め込まれており、次のようにMyAppHost.aspxのクエリ文字列を受け入れるように設計されています。 MyApp.xaml.cs

、私は動的にDefault.aspxにおけるユーザーの選択に基づいてDefault.aspxに(ホストMyAppHost.aspx?param1={0}&param2={1}付き)シルバーアプリ、MyAppを埋め込む必要がある

if (HtmlPage.Document.QueryString.ContainsKey("param1")) 
{ 
     Param1 = HtmlPage.Document.QueryString["param1"]; 
} 

を持っています。そんなことがあるものか?

EDIT: 私がDefault.aspxにsilverlightアプリケーションをホストして、initパラメータを使用してクエリ文字列を使用することができればもっと簡単になります。私はこのアプローチについて考えていましたが、イベントに動的にパラメータを渡す方法を理解できませんでした。私はa new questionを追加しています。

+0

msdn.microsoft.com/en-us/library/cc838145(v=vs.95).aspx –

+0

私の場合は該当しません。私は明確にするために質問を編集しました。 – devnull

+0

SilverlightアプリケーションがMyAppHost.aspxページに依存している場合、Default.aspxのiframeにロードするとどうなりますか? – rossisdead

答えて

1

あなたが尋ねていることを正確に行う唯一のオプションは、クライアントサイトのJavaScriptコードを使用して、必要に応じてオリジナルページのMyAooHost.aspxページを指すIFrameを挿入することです。

クエリー文字列からパラメータを読み込む代わりに、ページのスクリプトからの入力を受け入れるようにSilverlightコントロールを設定する方が簡単な方法かもしれません。この方法では、ユーザーの選択が変わったときにSLコントロールを元のページに追加し、 (SLコントロールでフレームをリロードするよりはるかに高速です)。

+0

はい、そのアプローチは簡単でしょう。 Silverlightアプリケーションに渡されるパラメータは、Default.aspxページのユーザー入力に基づいて生成されます。ユーザーの選択に基づいて 'InitParameters'を使ってSilverlightアプリケーションを動的にロードする方法。 – devnull

+0

これらの記事はそれをカバーする必要があります - http://msdn.microsoft.com/en-us/library/cc645076%28v=VS.95%29.aspx –

関連する問題