Можно ли обновить элементы пользовательского интерфейса страницы из другого класса? (ВПФ)C#

Место общения программистов C#
Anonymous
Можно ли обновить элементы пользовательского интерфейса страницы из другого класса? (ВПФ)

Сообщение Anonymous »

Изначально эта проблема заключалась в следующем: «Как обновить элементы пользовательского интерфейса из другого класса», которую я решил с помощью
public static MainWindow window
{
get
{
return Application.Current.Windows.OfType().FirstOrDefault()
}
}

используя строку типа «MainWindow.window.(элемент пользовательского интерфейса для обновления);» чтобы обновить элемент пользовательского интерфейса
Я решил попробовать добавить страницы в свое приложение, что я и сделал
public MainWindow()
{
AssemblerGUI assemblerWindow = new AssemblerGUI();
NavigationFrame.Navigate(assemblerWindow);
}

(NavigationFrame — это имя элемента Frame в xaml)
Страницы работают, но описанный выше обходной путь позволяет другим классам изменять пользовательский интерфейс. не работает и выдает «Ссылка на объект не установлена ​​на экземпляр объекта» при каждом его вызове, поскольку создается экземпляр страницы для перехода к нему в кадре.
Я бы думаю, я мог бы просто вставить весь код в файл .xaml.cs страницы, но это будет сильно раздражать меня в будущем, когда я хочу добавить функции.
Я попробовал свое предыдущее решение, но оно выдает ошибку при создании экземпляра страницы (и это необходимо для работы XAML)
public static AssemblerGUI page
{
get
{
return Application.Current.Windows.OfType().FirstOrDefault();
}
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... -class-wpf

Вернуться в «C#»