Я использую AvalonDock в приложении WPF, и мне нужно сохранить макет AvalonDock, который пользователь установил (перемещение, закрепление, отсоединение панелей).
Функция для этого находится на самом элементе управления (SaveLayout, RestoreLayout).
Как правильно это сделать?
Прямо сейчас у меня есть команда в mainWindowViewModel, которая создается приложением при создании экземпляра представления окна и модели представления. Это в основном делает вызов команды relay анонимным методом, который вызывает необходимую функцию в элементе управления view. Это работает, так как приложение создает окно и модель для него.
Но как бы я подошел к этому, если бы это делали некоторые низкоуровневые представление и модель представления? Если бы я использовал этот метод, мне все равно пришлось бы создавать Команду на уровне приложения и отправлять ее через viewModels туда, где ее необходимо привязать? Внутри него я должен искать пользовательский элемент управления, который является представлением, а затем элемент управления avalonDock внутри него и использовать его на уровне приложения, который подвержен ошибкам. Каким-то образом это кажется грязным ...
Спасибо!