AppShell для Xamarin Forms - проблема контекста привязки MenuItem - PullRequest
0 голосов
/ 02 апреля 2020

Я использую оболочку приложения и определил MenuItem, который использует представление для содержимого

Я хочу связать отображаемое имя активного пользователя со свойством в представлении

проблема в том, что BindingContext для страницы переопределяется элементом Xamarin.Forms.MenuShell

Это означает, что он не обновляется постоянно

    private AuthViewModel _vm;

    public FlyoutFooter()
    {
        InitializeComponent();

        _vm = App.authViewModel;
        this.BindingContext = _vm;

    }


    protected override void OnBindingContextChanged()

    {
        System.Diagnostics.Debug.WriteLine("Debug: Flyoutfooter: OnBindingContextChanged: Context " + this.BindingContext.GetType());

    }

Когда я просматриваю выходные данные отладки, я могу посмотрите это

Debug: Flyoutfooter: OnBindingContextChanged: Context.ViewModels.AuthViewModel
Debug: Flyoutfooter: OnBindingContextChanged: Context Xamarin.Forms.MenuShellItem

Это говорит о том, что привязка отделена от модели представления, которая мне нужна, чтобы обновить отображаемое имя при его изменении

Может кто-нибудь посоветовать, как мне обойти это?

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