文本框的文本属性未显示其值

时间:2012-09-27 18:44:23

标签: c# .net

我有一个我正在添加的对象列表。

private List<Employee> employees = new List<Employee>();

我的表单应用程序上有一个按钮,用于创建新的员工对象并将其添加到列表中。在点击之前,它会显示“Add Hourly Employee”。点击后,它会变为“每小时保存员工”。我只是使用布尔值来确定要显示的文本。

private void addHrlyEmpBtn_Click(object sender, EventArgs e)
    {
        resetBtn.Enabled = true;
        cancelBtn.Enabled = true;

        if (!addHourly)
        {
            resetBtn.Enabled = true;
            cancelBtn.Enabled = true;
            textBox4.Enabled = false;
            textBox4.Text = (employees.Count + 1).ToString();
            textBox7.Enabled = false;
            addHrlyEmpBtn.Text = "Save Hourly Employee";
        }
        else if (addHourly)
        {
            //Grab values, create new object, and add to list.
            //Set addHourly to false;
        }
        //Other stuff
    }

我正在尝试向employees.Count + 1显示textBox4,但由于某种原因,它无效。根本没有显示任何文字。理想情况下,我希望禁用文本框但仍显示值。我只想在!addHourly时显示它。

我做错了吗?

2 个答案:

答案 0 :(得分:3)

你写的代码在校长中没有错。

我强烈建议为所有变量提供有意义的名称。像 textBox4 这样的名称可能会给您自己和未来的代码维护者造成混淆。

如果值未按预期更改,则很可能不会输入 if 分支。

处设置断点
if (!addHourly)

查看 addHourly 是否具有您期望的值。

答案 1 :(得分:1)

检查是否正在调用addHrlyEmpBtn_Click。

如果没有尝试将Click事件与设计师的addHrlyEmpBtn_Click方法相关联

或在构造函数中添加addHrlyEmpBtn.Click += addHrlyEmpBtn_Click;