Xamarin Forms - force a control to refresh value from binding

As @BillReiss mentioned you need to use the OnPropertyChanged event inherit the NameEntryViewModel from this class:

public class BaseViewModel : INotifyPropertyChanged
{

    protected BaseViewModel ()
    {

    }

    public event PropertyChangedEventHandler PropertyChanged;

    protected virtual void OnPropertyChanged ([CallerMemberName] string propertyName = null)
    {
        PropertyChangedEventHandler handler = PropertyChanged;
        if (handler != null)
            handler (this, new PropertyChangedEventArgs (propertyName));
    }
}

And create a private property that you can assign to you public property something like:

Dictionary<string, string> _branding = new Dictionary<string, string>();
public Dictionary<string, string> Branding
{
    get
    {
        return _branding;
    }
    set
    {
        _branding = value;
        OnPropertyChanged(nameof(Branding));
    }
}

And with this every time you set the Branding property it will let the View know that something changed! Sometimes if you are doing this on a back thread you have to use Device.BeginInvokeOnMainThread()