C # WPF не-mvvm конвертер страниц - PullRequest
0 голосов
/ 29 ноября 2018

Я кодирую какое-то приложение с разными страницами в одном окне.Прежде всего, я использую шаблон MVVM, но позже я понимаю, что использование этого шаблона для такого небольшого приложения не является необходимым.

Но в версии MVVM я использую конвертер страниц для привязки xaml.Позвольте мне показать, что я имею в виду:

MainWindow.xaml

<Frame
    Name="MainFrame"
    Content="{Binding ApplicationViewModel.CurrentPage, Source={x:Static local:ViewModelLocator.Instance}, Converter={conv:ApplicationPageValueConverter}}"
    NavigationUIVisibility="Hidden" />

В ValueConverter я использую переключатель с параметром enum и возвращаю новую страницу (), например:

case ApplicationPage.HelloPage:
                    return new HelloPage();

Итак, я сожалею о шаблоне MVVM.

Но теперь я использую этот контейнер, он вообще не работает.Я использую бэкэнд-файл для страниц и окон.В бэкэнд-файле окна я использую свойство с OnPropertyChanged.Но когда страница меняется, конвертер не работает.

1 Ответ

0 голосов
/ 29 ноября 2018

Хорошо, я нашел ответ.

Я забыл указать DataContext бэкэнд-файла.

public MainWindow()
{
    InitializeComponent();
    Thread.CurrentThread.CurrentCulture = new CultureInfo("ru-RU");
    Thread.CurrentThread.CurrentUICulture = new CultureInfo("ru-RU");

    DataContext = this;
}

Итак, все!=)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...