问题描述
我试图通过做一些数学运算然后将其转换来使工具将字段显示为%。
这是我的代码,我想做的就是这些事情。
如果结果是单位百分比的值,则显示单位百分比的示例计算结果为3%,然后显示3%,否则,如果是小数则显示3.1%,如果值变小则为1大于1%,例如0.5或.05。
代码的一些背景知识。 tbOptionlvl5的值将为10,000。 10,000是100%,因此示例可能是510。
if (Item_Is_Rare() && int.Parse(TbOptionID5.Text) >= 0)
{
lblProb5.Text = "";
decimal result = ((int.Parse(TbOptionLvl5.Text) * 100) / 10000);
lblProb5.Text = Convert.ToString(result) + "%";
}
if (TbOptionID10.Text == "-1")
lblProb10.Text = "";
if (TbOptionID10.Text != "-1" && TbOptionID10.Text != "")
{
if (int.Parse(TbOptionID10.Text) > 10000)
TbOptionID10.Text = Convert.ToString(10000);
Update_Probability_Text();
}
解决方法
StringBuilder builder = new StringBuilder(result.ToString("##.##"));
builder.Append(" %");
lblProb5.Text = builder.ToString();
,
在数学过程中使用小数点说明符。
decimal result = (tbText.text * 100) /10000
固定如下
decimal result = (tbText.text * 100) /10000m