标签中的数据绑定问题文本不显示数据

Data Binding Issue text in label is not displaying data

下面的 Label 在 运行 连接它时不显示数据 <Label Text="{Binding Firstname}"/> 如果我 运行 在调试模式下编码并且如果我将 Label 更改为 Editor 或显示数据的其他内容。 请让我知道为什么会这样,我该如何解决。

代码隐藏 私人领域

    private string email;
    private string phone;
    private string firstname;
    private string lastname;

方法从FirebaseFirestore

调用数据
        public async Task GetDataAsync()
    {
       var user = await DependencyService.Get<IAccountService>().GetUserAsync();

        phone = user.Phone;
        email = user.Email;
        firstname = user.Firstname;
        lastname = user.Lastname;
    }

Public 属性

     public string Firstname
    {
        get { return firstname; }
        set
        {
            firstname = value;
            OnPropertyChanged(nameof(Firstname));
        }
    }
    public string Lastname
    {
        get {return lastname;}
        set
        {
            lastname = value;
            OnPropertyChanged(nameof(Lastname));

        }
    }

    public string Email
    {
        set
        {
            if (email != value)
            {
                email = value;
                OnPropertyChanged("Email");
            }
        }
        get
        {
            return email;
        }
    }
    public string Phone
    {
        set
        {
            if (phone != value)
            {
                phone = value;
                OnPropertyChanged("Phone");
            }
        }
        get
        {
            return phone;
        }
    }

这一行:

firstname = user.Firstname;

必须改为:

Firstname = user.Firstname;

解释:

如果您不使用名字 属性 setter,那么 OnPropertyChanged(nameof(Firstname)); 永远不会被调用。

所以 XAML 不知道 属性 的值已经改变。