2009-09-21 18 views
3

私はmoでSilverlight 3で遊んでいます。現在のユーザーIDをSilverlight 3ページに取得しようとしています。私は少しの研究をしてinitParamsが正しい方法だと思われます。問題は、彼らはasp:Silverlightコントロールを使用しているように見えて、SL3に入ってしまった。私はinitParamsリストに変数を取得しようとしていますが、これは正しい方法だと仮定しています。ASP.NETコードからSilverlight 3コントロールに変数を取得するにはどうすればよいですか?

私は、「MyFirstSilverlightApp」という新しいSilverlight 3アプリケーションを使い始めました。私は "MyFirstSilverlightAppTestPage.aspx"にコードビハインドページを追加して、巧妙なビットを実行できるようにしました。私は、オブジェクトdefenitionののparamsにこれを追加することにより、ハードコードinitParamに管理している

:App.xaml.csで

<param name="initParams" value="userID=id42" /> 

を、私はApplication_Startupに以下を追加しました:

string userID = e.InitParams["userID"]; 

私はコンストラクタのパラメータで自分のページに渡してから、それをコントロールで使用しました。それはすべて動作します。

私が解決できないことは、コードビハインドで作成した変数から値をparam name値の定義に取得する方法です。どんな援助も感謝して受け取ります。

答えて

2

一つの迅速な汚いアプローチは、PARAMで<% %>を使用することです: -

<param name="intiParams" value="userID=<%=myUserID%>" /> 

私れる好ましい解決策を作成するには、objectタグおよび方法tayloredで、その内容にレンダリングすることができます私自身のSilverlightのWebコントロールです私のアプリケーション。

+0

ああ、そうです。私はそれらのタグを参照して見たが、記号なしで私は彼らを働かせることができませんでした。あなたが言ったように、それは少し汚い感じが、これのために動作します。 私はウェブコントロールを書いたことがありません - 私は基本的なことしかしていないので、私はASP.NETを手に取る傾向があります。私はそのようなことのためにサンプルコードを投稿することはできないと思いますか? – serialhobbyist

0

あなたのコレクションに追加します。

のようなものを試してみてください。

For Each item As KeyValuePair(Of String, String) In e.InitParams 
    Resources.Add(item.Key, item.Value) 
Next 
+0

私はあなたが私の問題を理解していないと思っています。どちらか、または私はあなたの解決策を理解していません。 e.InitParamsはApplication_Startupで利用できますか? e.InitParamsからではなく、e.InitParamsにパラメータを取得する必要があります。私はそれを私のSilverlightアプリケーションに挿入しようとしています。 – serialhobbyist

+0

あなたの申し訳ありません、私はあなたの投稿を誤解しています。これはあなたのアプリに渡された後のパラメータの処理を指します。 – MLT

関連する問題