我想做的是:
-
当用户开始在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;
}
}
您应该使用水印。但是,如果您希望在开始时执行此操作,请在属性中设置默认值。首先,您需要在Enter和Leave事件期间创建事件处理程序;
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";
}
}