У меня есть окно с рамкой и несколькими страницами. Когда окно загружается, кадр перемещается на страницу приветствия, и когда я нажимаю кнопку на странице приветствия, я хочу, чтобы родительский кадр переходил на другую страницу. Для этого мне нужно получить доступ к родительскому фрейму со страницы, но я не могу понять, как это сделать. Я пробовал код ниже, но он возвращал null:
private void myButton_click(object sender, RoutedEventArgs e)
{
SecondPage secPage = new SecondPage();
((this.Parent) as Frame).Navigate(secPage);
}
Я проверил, что "this.parent" возвращается, и он равен нулю. Как я могу получить родительский фрейм, чтобы я мог перемещаться с одной страницы на другую?
Страница также имеет свойство NavigationService
. Вы можете использовать это свойство для удобства навигации между страницами:
private void myButton_click(object sender, RoutedEventArgs e) {
SecondPage secPage = new SecondPage();
NavigationService.Navigate(secPage);
}
Чтобы получить доступ к родительскому VisualTreeHelper
, вы должны использовать VisualTreeHelper
для подъема и поиска кадра. Вы можете найти больше об этом. В любом случае использование свойства NavigationService
лучше.