不使用按钮更新标签

时间:2011-09-04 14:58:59

标签: c# winforms label auto-update

有没有办法让标签自动更新,这样我就不必使用按钮发送命令了。我设置的是小计文本框,折扣文本框,税收标签,运输文本框和总标签。因此,当人们填写小计,折扣和运费时,我希望计算税收标签,但前提是在表单的另一部分中选择了某个特定状态。那么,随着所有填充,我希望填写总标签。所有这些我知道我可以用一个按钮,但我想知道是否有办法在Visual Studio中使用C#自动化它。 / p>

感谢。

3 个答案:

答案 0 :(得分:2)

我使用TextChanged事件在成对的文本框之间更新这些值。以下是我的代码的一些摘录:

private void onLongitudeTextChanged(object sender, EventArgs e) {
           updateDistanceAndBearing();
        }

updateDistanceAndBearing进行一些错误检查 - 如果用户可以放入无效值然后更新其他TextBox的Text属性,这可能是一个好主意。 我有文本框但是更新了label.Text属性。

如果你有数字更新来获取值,它会变得更加混乱(至少我发现它)

答案 1 :(得分:1)

您可以调用方法来更新控件的更改事件中的标签。

有关详细信息,请提供更多详细信息。

答案 2 :(得分:1)

这是我的头脑,但应该让你非常接近......

private void taxChanged(object sender, EventArgs e)
        {
             updateTax();
        }


private void updateTax()
        {
            // the rest of your logic, checking state, etc. 
            // 
            this.Tax.Text = aValueCalculatedInYourLogicAbove;
            updateTotal()
        }

private void updateTotal()
        {
            // sum up whatever fields need to be summed 
            // 
            this.Tax.Text = aTotalValueCalculatedAbove;
        }