[WPF] ブラウザアプリでの状態遷移
Application.Current.Properties["xxxx"];
を使おうが一番の答えでしょうかね。
セッションと同じ感覚で使えば、ASP.NET になれた人でも違和感なく使えると思います。
例)本文参照 例) Page1 と Page2 でデータ渡し
Page1 にボタンを一個貼り付けて、そこのClickイベントで
Application.Current.Properties["Name"] = "Makoto Watanabe";
//
var mPage = new Page2
{
};
NavigationService.Navigate(mPage);
こんな感じでコーディングを行う。
Page2 には、ラベルを一個貼り付けて、遷移されてきたデータを表示する。
Page2 loaded をフックして
private void Page_Loaded(object sender, RoutedEventArgs e)
{
label1.Content = Application.Current.Properties["Name"];
}
とやればデータの受け渡しが可能になる。
カスタムコントロールを作成して、カスタムコントロールでの制御も可能だと思う。
Page1 で
private CustomControl1 _CustomControl1;
Page1 のコンストラクタで
if (null == _CustomControl1)
{
_CustomControl1 = new CustomControl1();
}
を宣言して...
var mPage = new Page2
{
CustomControl1 = _CustomControl1
};
で渡してあげる。
Page2 では受け口を作成する。
private CustomControl1 _CustomControl1;
public CustomControl1 CustomControl1
{
get { return _CustomControl1; }
set { _CustomControl1 = value; }
}
とでも宣言してあげればOK
後は、Page2 のコンストラクタでも
if (null == _CustomControl1)
{
_CustomControl1 = new CustomControl1();
}
とでもしてあげれば少しだけ幸せになれると思う。
を使おうが一番の答えでしょうかね。
セッションと同じ感覚で使えば、ASP.NET になれた人でも違和感なく使えると思います。
例)本文参照 例) Page1 と Page2 でデータ渡し
Page1 にボタンを一個貼り付けて、そこのClickイベントで
Application.Current.Properties["Name"] = "Makoto Watanabe";
//
var mPage = new Page2
{
};
NavigationService.Navigate(mPage);
こんな感じでコーディングを行う。
Page2 には、ラベルを一個貼り付けて、遷移されてきたデータを表示する。
Page2 loaded をフックして
private void Page_Loaded(object sender, RoutedEventArgs e)
{
label1.Content = Application.Current.Properties["Name"];
}
とやればデータの受け渡しが可能になる。
カスタムコントロールを作成して、カスタムコントロールでの制御も可能だと思う。
Page1 で
private CustomControl1 _CustomControl1;
Page1 のコンストラクタで
if (null == _CustomControl1)
{
_CustomControl1 = new CustomControl1();
}
を宣言して...
var mPage = new Page2
{
CustomControl1 = _CustomControl1
};
で渡してあげる。
Page2 では受け口を作成する。
private CustomControl1 _CustomControl1;
public CustomControl1 CustomControl1
{
get { return _CustomControl1; }
set { _CustomControl1 = value; }
}
とでも宣言してあげればOK
後は、Page2 のコンストラクタでも
if (null == _CustomControl1)
{
_CustomControl1 = new CustomControl1();
}
とでもしてあげれば少しだけ幸せになれると思う。
ホーム
開発者の憂鬱
技術情報
DotNetNuke






