Я использую оболочку приложения и определил 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
Это говорит о том, что привязка отделена от модели представления, которая мне нужна, чтобы обновить отображаемое имя при его изменении
Может кто-нибудь посоветовать, как мне обойти это?