1

Silverlight RIA アプリケーションを開発しました。サイト リンクがhttp://MySilverlightApp 私の main.xaml ページにあると仮定します。別のビュー (Page1 など) に移動します。だから私が行くとき、私はhttp://MySilverlightAppにルーティングされますhttp://MySilverlightApp/#/Page1

この Page1.xaml では、ラジオ ボタンのリストを表示します。各ラジオ ボタンには ID があり、ラジオ ボタンを選択すると、ページにさらに表示されます。

次のように、URL自体からそのIDを渡したいhttp://MySilverlightApp/#/Page1?ID=13

次に、ページが読み込まれたら、その ID を取得してラジオ ボタン (ID 13) を選択し、そこに資料を表示します。

どうすればこれを達成できますか? コード ビハインドではなく、Page1 ビュー モデルで文字列を取得したい。(バインドではなく、値を取得したいだけです)

4

1 に答える 1

0

これが私がしたことです。

コード ビハインドでは、パラメーターが渡されているかどうかを照会して確認するためのプロパティを導入しました。

private string ParamValue
        {
            get
            {
                string paramValue = "";
                const string paramName = "ID";

                if (NavigationContext.QueryString.ContainsKey(paramName))
                    paramValue = NavigationContext.QueryString[paramName];

                return paramValue;
            }
        }

Loaded Event ハンドラーで、ビュー モデルのパブリック メソッドを呼び出し、ID を渡します。何かのようなもの

private void Page1_Loaded(object sender, RoutedEventArgs e)
        {
            if (!String.IsNullOrEmpty(ParamValue))
            {
                Page1iewModel page1ViewModel = this.DataContext as Page1ViewModel ;
                page1ViewModel.SetID(ParamValue);
            }
        }
于 2012-12-08T09:16:24.733 に答える