字符串属性的自定义属性

本文关键字:自定义属性 属性 字符串 | 更新日期: 2023-09-27 18:31:32

我有一个问题。我想做这样的事情:

[PutStars]
public string telephone

例如,PutStars可以是自定义属性。

PutStars作用于字符串,因此它替换电话值[333-123456789],并在获取值时检索例如[333-12xxxx789]

可能吗?

多谢!

字符串属性的自定义属性

好吧,您可以实现一个帮助程序方法并在获取值时调用它:

private string _tel;
public string Tel 
{
  set{ _tel = value; }
  get {
    return _tel.PutStars();
  }
}
public static string PutStars(this string str)
{
 return str.Replace("1", "*");
}

或者,当您获得字符串时,您可以执行以下操作:

var starred = myObj.Tel.PutStars();

最接近内置的可能是 [PasswordPropertyText] ,但是 a:旨在掩盖整个字段,以及 b:这完全取决于您使用的 UI 框架来查找此属性; 属性中没有什么是自动的。坦率地说,最好的办法可能是添加用于 UI 绑定的第二个属性:

public string Telephone {get;set;}
public string TelephoneMasked {
    get { /* your code here */ }
}

并绑定到TelephoneMasked.