WPF this.NavigationService.Navigate

Я изучаю учебник WPF с веб-сайта Microsoft, который выглядит следующим образом:

https://docs.microsoft.com/en-us/dotnet/framework/wpf/getting-started/walkthrough-my-first-wpf-desktop-application

Я получаю следующую ошибку из моего кода:

private void Button_Click(object sender, RoutedEventArgs e)
{
    //View Expense Report
    ExpenseReportPage expenseReportPage = new ExpenseReportPage(); //Line 1
    this.NavigationService.Navigate(expenseReportPage); // Line 2
}

Строка 2 в приведенном выше коде дает следующую ошибку для NavigationService:

'invalid-global-code' не содержит определения для 'NavigationService', и невозможно найти доступный метод расширения 'NavigationService', принимающий первый аргумент типа '' (вы пропустили директиву using или ссылку на сборку?)

Я добавил использование System.Windows.Navigation; Я думаю, что проблема исходит из этой части этого.NavigationService.Navigate(CostReportPage);

1 ответ

Изменить Window элемент к NavigationWindow элемент, или добавить Frame элемент к вашему окну и получить доступ к его NavigationService имущество:

frame.NavigationService.Navigate(expenseReportPage); // Line 2

XAML:

<Window ...>
    <Frame x:Name="frame" />
</Window>
Другие вопросы по тегам