SQLの窓 イラストAC フリー素材

2012年09月29日

App クラスを介してページ間の参照 / Windows Phone(C#)

App.xaml.css 全体

App クラスにプロパティを定義
// メインページのインスタンスを格納
public MainPage mainPage { get; set; }
public Page1 page1 { get; set; }

※ 宣言を static にすると、キャストが必要無くなります。


MainPage.xaml.cs
public partial class MainPage : PhoneApplicationPage
{
	// コンストラクター
	public MainPage()
	{
		InitializeComponent();

		// メインページの参照を App のプロパティにセット
		(App.Current as App).mainPage = this;
	}

	private void ApplicationBarMenuItem_Click(object sender, EventArgs e)
	{

		if ((App.Current as App).page1 != null)
		{
			// ページ1のクラス
			Debug.WriteLine((App.Current as App).page1.GetType());
			// Page1 のページタイトル
			Debug.WriteLine((App.Current as App).page1.PageTitle.Text);
		}

		Debug.WriteLine(((ApplicationBarMenuItem)sender).Text + " がクリックされました");
		this.NavigationService.Navigate(new Uri("/Page1.xaml", UriKind.Relative));

	}

}

Page1.xaml.cs
public partial class Page1 : PhoneApplicationPage
{
	public Page1()
	{
		InitializeComponent();

		// ページ1の参照を App のプロパティにセット
		(App.Current as App).page1 = this;

	}
}




【オワコンの最新記事】
posted by at 2012-09-29 14:42 | オワコン | このブログの読者になる | 更新情報をチェックする