我試圖確保從TextBox派生的文本始終格式化爲貨幣。string.Format「C」(currency)正在返回字符串「C」而不是格式化文本
我已經重寫了像這樣的Text屬性。
public override string Text
{
get
{
return base.Text;
}
set
{
double tempDollarAmount = 0;
string tempVal = value.Replace("$", "").Replace(",","");
if (double.TryParse(tempVal, out tempDollarAmount))
{
base.Text = string.Format("C", tempDollarAmount);
}
else
{
base.Text = "$0.00";
}
}
}
結果:
- 如果我傳遞值 「文本」 (AmountControl.Text = 「文本」),我的測試頁 在控制的 文本設置爲「 $ 0.00「,如預期。
- 如果我通過了價值7 (AmountControl.Text =「7」),我 希望看到「$ 7.00」,但我的測試頁上的控件的文本 設置 爲「C」。
我認爲我錯過了這裏很簡單的東西。這是關於財產的東西嗎?或者我錯誤地使用了字符串格式方法?
感謝。我將其標記爲答案,因爲你是第一個。感謝您的鏈接。 – NetHawk 2009-01-27 16:27:55