Я делаю игру-змейку в WPF C #, и я создал несколько пользовательских элементов управления для разных «представлений», это означает, что у меня есть MainWindow, который наследуется от класса Window, и несколько пользовательских элементов управления с их файлами xaml.Один пользовательский элемент управления представляет главное меню, другой - представление параметров и т. Д.
public partial class MainWindow: Window
{
public static Menu menu;
public MainWindow()
{
InitializeComponent();
menu = new Menu();
this.Content = menu;
}
}
, как указано выше, в MainWindow я создаю объект Menu (это один из пользовательских элементов управления - файл класса и файл xaml) и устанавливаю содержимое Window на содержимое Menu.И затем в классе меню я делаю то же самое, например, как пользователь нажимает на кнопку с текстом «параметры», он переходит к параметрам пользовательского управления.Я просто делаю
this.Content = new Options(); //"this" is now menu class
, когда он нажимает кнопку с текстом «одиночная игра», он переходит к пользовательскому управлению с однопользовательской игрой
this.Content = new Game();
и так далее.Таким образом, все работает нормально, я могу переключаться между различными пользовательскими элементами управления и «загружать» разное содержимое в окно приложения, но каждый раз, когда я создаю новый объект, и это проблема.Когда я перехожу к параметрам и затем возвращаюсь в меню, создается новый объект класса меню, я не могу вспомнить предыдущие настройки и т. Д. Я хотел бы создать это только один раз, а затем сослаться на это - загрузить содержимое существующего объекта.Я пытался использовать привязку, но это не работает.Как я могу это сделать?Как я могу переключаться между различными пользовательскими элементами управления без потери данных и каждый раз создавать новый объект?