我想将十进制值格式化为货币值。
我怎样才能做到这一点?
Answers:
属性可以返回他们想要的任何东西,但是它将需要返回正确的类型。
private decimal _amount;
public string FormattedAmount
{
get { return string.Format("{0:C}", _amount); }
}
有人问...如果它是可以为空的十进制。
private decimal? _amount;
public string FormattedAmount
{
get
{
return _amount == null ? "null" : string.Format("{0:C}", _amount.Value);
}
}
尝试这个;
string.Format(new CultureInfo("en-SG", false), "{0:c0}", 123423.083234);
它将123423.083234转换为$ 1,23,423格式。
您可以使用String.Format,请参见代码[通过How-to Geek ]:
decimal moneyvalue = 1921.39m;
string html = String.Format("Order Total: {0:C}", moneyvalue);
Console.WriteLine(html);
// Output: $1,921.39
也可以看看:
您返回的格式将受到您声明的返回类型的限制。因此,可以的,您可以将属性声明为字符串,然后返回某些内容的格式化值。在“获取”中,您可以放置所需的任何数据检索代码。因此,如果您需要访问一些数值,只需将return语句放入:
private decimal _myDecimalValue = 15.78m;
public string MyFormattedValue
{
get { return _myDecimalValue.ToString("c"); }
private set; //makes this a 'read only' property.
}