В моем приложении wpf есть две страницы, page1 на страницу 2.
page1 выглядит примерно так:
public static int someVar;
public Page1()
{
InitializeComponent();
}
.
.
.
// the user gives some value to "someVar"
Page2 p2 = new Page2();
void Next_btn(object sender , RoutedEventArgs e)
{
if (this.NavigationService.CanGoForward)
{
p2.ChangLabel();
this.NavigationService.GoForward();
} else
NavigationService.Navigate(new Page2());
}
Page2 выглядит так:
public Page2()
{
InitializeComponent();
ChangeLable();
}
public void ChangeLable()
{
MessageBox.Show("I'm here");
if(Page1.someVar==1)
myLabel.Content = "blabla";
else
myLabel.Content = "bbbbbb";
}
.
.
.
void Back_btn(object sender , RoutedEventArgs e)
{
if (this.NavigationService.CanGoBack)
this.NavigationService.GoBack();
}
давайтескажем, что пользователь сделал следующее:
пользователь был в page1
и помещает someVar=1
, а затем переходит к page2
.поэтому функция ChangeLabel()
изменит метку на blabla
.после этого он вернулся на страницу 1 и изменил someVar=3
, а затем снова перешел на страницу 2, проблема в этом сценарии заключается в том, что метка не меняется на bbbbb
, хотя в окне сообщения отображается
какрешить следующий сценарий?
Я имею в виду, почему во второй раз метка не меняется на bbbb