Основной кадр Прослушивание события нажатия кнопки страницы - PullRequest
0 голосов
/ 21 января 2019

У меня есть главное окно, которое представляет собой фрейм, отображающий разные страницы в моем проекте, и мне хотелось бы, чтобы при нажатии кнопки на странице менялась страница в фрейме.

Проблема в том, что я не могу заставить Frame содержать обработчик событий, потому что при нажатии кнопки он кажется локальным для самой страницы.Есть ли способ для фрейма увидеть, когда нажата кнопка страницы, и соответственно изменить страницу?

Main.Content = new Page.Intro();

Однако, когда кнопка Next нажата в пределах Page.Intro() Я хочу в пределах Main Window Classна дисплей

Main.Content = new Page.Home(userinformation); 

Я пытался следовать Как нажать кнопку на странице, чтобы изменить источник фрейма Windows? , что похоже на то, что я пытаюсьдостижения, хотя мои страницы имеют параметры, которые мне нужно передать, поэтому я не могу вызвать MainContent.Source = new Uri("Home.xaml", UriKind.Relative);, поскольку нет места для передачи userinformation.

1 Ответ

0 голосов
/ 21 января 2019

так как нет куда передать пользовательскую информацию

Navigate метод не только принимает Uri, он имеет перегрузку , которая принимает объект в качестве параметра. Так что это работает для вас

//button click in Page.Intro
private void Button_Click(object sender, RoutedEventArgs e)
{
    this.NavigationService?.Navigate(new Page.Home(userinformation));
}
...