繁体   English   中英

连接用户控件的两个字符串属性(firstName + lastName)并将其分配给标签

[英]Join two string properties (firstName + lastName) of usercontrol and assign it to label

我做了一个包含标签的自定义用户控件。 我有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属性。 假设您希望每次名字或姓氏更改时都将标签设置为全名,那么一种选择是在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();
  }));
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM