私のアプリケーションでは、ほぼすべてのページでいくつかの変数が必要なので、Application.xaml のように変数を宣言しました。
<sys:String x:key="First">First</sys:String>
そしてあるページで、次のようなコードの値を変更します
Resources["First"] = "This is First";
次のように変数を呼び出すと、2ページ目に
String f = (string)this.TryFindResource("First");
MessageBox.Show(f);
出力は「これが最初」ではなく「最初」です。私も試してみました。
Application.Current.Properties["First"]