我需要帮助在Windows窗体上显示小数值。
我有一个课程,有一个计算兴趣金额的方法,如下所示。
public virtual decimal CalculateInterest()
{
interest = (interestRate/100) * base.getBalance();
return interest;
}
在我的主窗体中,单击按钮时使用此方法,如下所示。
private void btnCalcInt_Click(object sender, EventArgs e)
{
decimal endBalance;
decimal intRate;
decimal getIntGained;
endBalance = Convert.ToDecimal(lblSaveEndingBalance.Text);
intRate = Convert.ToDecimal(lblSaveIntRate.Text);
SavingsAccount CalcInt = new SavingsAccount(endBalance, intRate);
getIntGained = CalcInt.CalculateInterest();
lblSaveInterest.Text = getIntGained.ToString();
}
在最后一行(lblSaveInterest.Text = getIntGained.ToString();)
中,如何告诉它在小数位后只显示2个位置?
或者,有人可以帮助解决这个问题吗?在我的Windows窗体上,我有一个表示百分比的文本框。目前,用户可以输入值2
或.02
。如何将此代码仅编码为.02
?通过这样做,我可以修改我的类中的方法并删除100的除法。
答案 0 :(得分:5)
对于第一部分,您可以使用以下任何一个:
lblSaveInterest.Text = getIntGained.ToString("#,###.00");
或者这个:
lblSaveInterest.Text = getIntGained.ToString("G");
编辑:对于第二部分,您可以为文本框添加验证规则,以便在文本框失去焦点时,如果数字大于1.0(100%),则显示消息框。
答案 1 :(得分:2)
我也会Decimal.TryParse(string, Decimal)
代替Convert.ToDecimal()
。
答案 2 :(得分:1)
lblSaveInterest.Text = Decimal.Round(getIntGained,2).ToString();