我想做的是:
当用户开始在textBox2中输入任何内容时,首先将其设为空,然后开始显示用户正在键入的内容。
然后,如果用户删除了他正在输入的内容,则会再次显示原始文本。
现在它的作用是我需要自己删除里面的文字,但是当我尝试输入任何东西时,我再次看到原始文本,因为它是空的。
private void textBox2_TextChanged(object sender, EventArgs e)
{
if (textBox2.Text != "" || textBox2.Text == "Enter Email Account")
{
textBox2.Text = "Enter Email Account";
button2.Enabled = false;
}
else
{
button2.Enabled = true;
}
}
答案 0 :(得分:1)
你应该使用水印。但是如果您希望在开始时执行此操作,请在属性中设置默认值。 您首先需要在输入和保留事件期间创建事件处理程序;
private void Form1_Load()
{
textBox1.Text = "Enter Email Account";
textBox1.GotFocus += new EventHandler(textBox1_GotFocus);
textBox1.LostFocus += new EventHandler(textBox1_Leave);
}
然后在输入时,应删除水印文字;
protected void textBox1_GotFocus(object sender, EventArgs e)
{
if (textBox1.Text == "Enter Email Account")
{
textBox1.Text = "";
}
}
然后重新检查离开事件;
protected void textBox1_Leave(object sender, EventArgs e)
{
if (textBox1.Text != "")
{
textBox1.Text = "Enter Email Account";
}
}