2014-11-21 45 views
0

我有一个问题。 我愿做这样的事情:字符串属性的自定义属性

[PutStars] 
public string telephone 

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

PutStars作用于字符串,因此它取代电话号码值[333-123456789],当获取值时,它将检索例如[333-12xxxx789]

可能吗?

非常感谢!

+0

你有什么类型的项目? Web,WPF,...? – 2014-11-21 11:25:58

+0

如果我正确理解你,你不能用属性来做类似的事情。你需要一个帮助你的工作。 – 2014-11-21 11:26:48

+0

我有一个Web项目 – user2328912 2014-11-21 11:27:15

回答

1

好了,你可以实现一个辅助方法和所获得的价值时,称之为:

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(); 
1

你会得到最接近内置的可能是[PasswordPropertyText],但a:那是为了掩盖整个领域,而b:它完全取决于你用来寻找这个属性的UI框架;属性中没有什么是自动的。你最好的选择,坦率地说,可能是添加使用的用户界面结合第二个属性:

public string Telephone {get;set;} 

public string TelephoneMasked { 
    get { /* your code here */ } 
} 

并绑定到TelephoneMasked

+0

我没有用户界面绑定。我需要其他用途的价值..! – user2328912 2014-11-21 15:28:54