在其他文本框

时间:2017-08-04 06:22:57

标签: c# asp.net

我有一个表格,其中有各种文本框,如果在其他文本框中输入的值大于0,则想要启用或禁用文本框。尝试了不同的解决方案但是现在没有运气。最后,我试过这个:

protected void TextBox7_TextChanged(object sender, EventArgs e)
{
    if (TextBox7.Text.Trim().Length>0)
    {
        TextBox9.Enabled = true;
    }
    else
    {
        TextBox9.Enabled = false;
    }
}

3 个答案:

答案 0 :(得分:1)

代码看起来很好,除了一些恼人的名字(尝试遵循一些命名约定)。由于它是Web表单,因此您必须确保以下事项才能使其正常工作:

    相应控件的
  • AutoPostBack属性设置为true
  • 仅在控件失去焦点时才会触发

答案 1 :(得分:0)

试试这个

string.IsNullOrEmpty(TextBox7.Text) ? TextBox9.Enabled = true : TextBox9.Enabled = false;

寻找它是一个字符串.IsNullOrEmpty(...),如果你愿意,可以用你的原始代码替换原来的代码,但另一行也应该适合你呢

if (string.IsNullOrEmpty(TextBox7.Text))
{
    TextBox9.Enabled = true;
}
else
{
    TextBox9.Enabled = false;
}

答案 2 :(得分:0)

试试这个。首先,我认为您需要首先禁用文本框9才能满足您的要求。

public Form1()
        {
            InitializeComponent();
            textBox9.Enabled = false;
        }

        private void textBox7_TextChanged(object sender, EventArgs e)
        {

            if (Int32.Parse(textBox1.Text.Trim()) > 0)
            {
                textBox9.Enabled = true;
            }
            else
            {
                textBox9.Enabled = false;
            }
        }