私は、C#Windowsストアアプリケーションの別のクラスからメインページの現在のインスタンスにアクセスする方法を知りました。WindowsストアアプリのMainPageの現在のインスタンスにアクセスする最も良い方法は?
特にSurface RTタブレットのWindowsストアアプリ(RT APIに限る)では、他のクラスのメインページメソッドとUI要素にアクセスしたいと考えています。
MainPage mp = new MainPage();
mp.PublicMainPageMethod();
mp.mainpageTextBlock.Text = "Setting text at runtime";
それはメソッド/ UI要素を公開するが、これは正しい手順することができないという点で、新しいインスタンスを作成する
はこのように、動作します。
実行時に他のクラスからメインページのメソッドにアクセスしてUI要素を変更する場合のベストプラクティスは何ですか?これについてはWindows Phone用の記事がいくつかありますが、Windows RTについては何も見つかりません。
私はベストプラクティスであることを行うことはないと言うでしょう。 MVVMなどのパターンを使用して、UIから呼び出すことができるパターンを使用することをお勧めします。 http://en.wikipedia.org/wiki/Model_View_ViewModel – dkackman
MVVMパターンの使用に同意します。最低でも、メインフォームを更新するクラスでイベントを行うことができます。メインフォームにこれらのイベントを購読させ、イベントに応じて独自のUIを処理できるようにします。 –