Я создаю приложение, в котором есть главная страница с заголовком, нижним колонтитулом и динамическим ConventView в центре.
Зависит от кнопки, на которую нажали (либо в нижнем колонтитуле, либо внутри страницы, отображаемой в представлении содержимого), представление в ContentView обновляется / изменяется.
Таким образом, мне нужно было заставить ContentView действовать как привязываемый элемент управления.
Чтобы это работало, я поддерживаю в ViewModel главной страницы стек кортежей.
Каждый раз, когда содержимое должно быть изменено в ContentView, я помещаю текущий BindingContext (некоторый экземпляр ViewModel) в этот стек в паре со страницей, которая в данный момент отображается в ContentView. (или выскочить из стека, если мне нужно вернуться к предыдущему виду)
После этого я установил для ContentView запрашиваемое представление с соответствующим ему ViewModel в качестве BindingContext.
Я заметил, что процедура изменения BindingContext - это проблема производительности. В большинстве случаев изменение BindingContext может занять 4-6 секунд (!!).
Как я могу решить эту проблему с производительностью (не разрушая созданный мной механизм навигации)?
Спасибо