为什么我的c#标签文本值没有更新?
本文关键字:更新 文本 我的 标签 为什么 | 更新日期: 2023-09-27 18:06:41
我有一个c#程序设置,应该接受数量输入,如果一个复选框被选中。然后将数量乘以价格,并用总成本更新相应的标签。
但是,当我运行程序时,它不更新标签。我运行调试器和标签的。text值在系统中是正确的,但它仍然没有出现在实际的形式。
在Visual Studio中是否有一个标签属性可以阻止更改被渲染?
是负责更新标签的代码片段。文本值
if (chkSesame.Checked)
{
intSesameQty = Convert.ToInt32(txtSesameQty.Text);
decSesameTotal = intSesameQty * decBAGEL_PRICE;
lblSesameSeedTotal.Text = decSesameTotal.ToString("c");
}
不知道更多关于你的形式的结构,以及你是如何调用你的代码,很难给你任何其他的建议,除了尝试调用lblSesameSeedTotal.Refresh()
后设置文本。
调用刷新(MSDN控制)。刷新链接)有效地使控件无效,并强制运行时重新绘制控件,这当然包括更新其文本。
这么做的原因有很多;重绘是一项代价高昂的操作,因此,通常情况下,如果您在窗体的其他地方处理事件,则可能不会更新某些控件。对于那些值倾向于保持不变的标签和类似控件来说尤其如此(例如,文本框的标签:Enter Name Here实际上不需要更改)。