在NavigationService.GoBack上使用变量

use*_*258 7 c# windows-phone-8

NavigationService.GoBack(); 我在viewmodel中设置了一个变量然后我想回去,当我回来时我想使用那个变量,但似乎什么都没有运行,我不想刷新那个页面.

有任何想法吗?

这里我设置变量,我想回到我的MainPage.

void item_click(object sender, RoutedEventArgs e)
   {

     Button b = e.OriginalSource as Button;

     App.ViewModel.bName = b.Content.ToString();
     App.ViewModel.bID = b.Name;

     this.NavigationService.GoBack();

    }
Run Code Online (Sandbox Code Playgroud)

在我的MainPage中,我想运行检查以查看变量是否已更改.

public MainPage()

    {
      /*
i don't want to run this actually, when i'm coming back from my secondarypage.

        InitializeComponent();
        InitializeSettings();

*/

            if (App.ViewModel.bName != null)
            {
                myButton.Content = App.ViewModel.bName;
                myButton.Name = App.ViewModel.bID;
            }
    }
Run Code Online (Sandbox Code Playgroud)

Meh*_*ard 1

我没有理解所有内容,但您是否尝试过使用“App”类来声明所有页面的全局变量而不是 ViewModel?

也许添加:

使用:

(App)App.Current 
Run Code Online (Sandbox Code Playgroud)

从此链接: 如何从 Windows Phone 的其他页面引用应用程序中的属性、全局变量