加入USERCONTROL的两个字符串属性(FirstName LastName),并将其分配给标签



我制作了一个自定义的usercontrol,其中包含标签。我有3个字符串属性:firstName,lastname,fullname。

如何设置标签的文本= fullname?

    public string firstName
    {
        get; set;
    }
    public string lastName
    {
        get; set;
    }
     public string fullName //this fails
    {
        get { return string.Format("{0} {1}", firstName, lastName); }
        set { labelFullName.Text = value; }
    }

对我来说看起来像Windows的形式。在WPF中,您将使用labelfullname.content属性。假设您想每次更改名称或姓氏更改时将标签设置为fullname,那么一个选项是在UserControl类中执行此操作:

private String _sFirstName = "";
private String _sLastName = "";
public String FirstName { 
  get { return _sFirstName; }
  set { _sFirstName = value; UpdateLabel(); }
}
public String LastName { 
  get { return _sLastName; }
  set { _sLastName = value; UpdateLabel(); }
}
public String FullName {
  get { return _sFirstName + " " + _sLastName; }
}
private void UpdateLabel() {
  // do within a UI thread to prevent threading issues
  this.BeginInvoke((Action)(() => {
    labelFullName.Text = this.FullName.Trim();
  }));
}

最新更新