[英]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.