RichTextBox
中正在显示价格。它采用代表价格的double
值并将其显示为字符串。
double priceDisplayed = 0.00;
richTextBox_itemPrice.Text = priceDisplayed.ToString("C", new CultureInfo("en-AU"));
上面的代码导致价格在RHS中与货币一起显示:
0.00$
为什么?检查类似的例子,似乎上面的代码应该在LHS上显示货币符号。
这真的很奇怪,如评论中所述,您的计算机上一定有一些culture-冲突。
与此同时,您可以在事件TextChanged
中尝试类似的操作:
private void richTextBox_itemPrice_TextChanged(object sender, EventArgs e)
{
string text = richTextBox_itemPrice.Text;
if (richTextBox_itemPrice.Text.Contains("$"))
{
text = text.Replace("$","");
}
richTextBox_itemPrice.Text = "$" + text;
}
并将字段初始化为具有richTextBox_itemPrice.Text = "$";