Winforms 如何为textBox指定初始值?
我希望我的C#程序的Winforms 如何为textBox指定初始值?,winforms,textbox,Winforms,Textbox,我希望我的C#程序的文本框具有初始值。例如,在其中一个文本框,它应该说“请输入您的姓名” 单击文本框上的(或tabStop)时,初始值应消失,用户将能够在文本框中输入他们的输入 我可以用点击事件来完成所有这些,但使用这种方法,初始文本的不透明度不会降低。我怎样才能做到这一点呢?我假设您谈论的是winform(tabstop),您必须在事件按键内处理它。您可以使用以下代码: TextBox1.Select(0, TextBox1.Text.Length); 这将选择文本,当用户开始键入时,窗口将
文本框
具有初始值。例如,在其中一个文本框
,它应该说“请输入您的姓名”
单击文本框
上的(或tabStop)时,初始值应消失,用户将能够在文本框
中输入他们的输入
我可以用
点击事件来完成所有这些,但使用这种方法,初始文本的不透明度不会降低。我怎样才能做到这一点呢?我假设您谈论的是winform(tabstop),您必须在事件按键内处理它。您可以使用以下代码:
TextBox1.Select(0, TextBox1.Text.Length);
这将选择文本,当用户开始键入时,窗口将为您删除该文本
对于TabStop,您也可以使用相同的代码来实现此行为。对于这种效果,您需要java脚本。因为java脚本提供鼠标悬停和鼠标移出功能,所以这些功能与您在本页搜索栏中看到的功能相同。如果您需要代码,请回复我。我可以给您。这就是我最终的做法:
Boolean first_time_click = true;
private void Form1_Load(object sender, EventArgs e)
{
textBox1.ForeColor = System.Drawing.Color.Gray;
textBox1.Text = "Enter the Text";
}
private void For_First_Click()
{
if (first_time_click)
{
textBox1.Clear();
textBox1.ForeColor = textBox1.ForeColor = SystemColors.WindowText;
}
first_time_click = false;
}
private void textBox1_Click(object sender, EventArgs e)
{
For_First_Click();
}
您只需设置Textbox的.Text属性,并在用户单击(或制表符)开始键入时使用GotFocus事件清除该框
请始终记住,浏览表单的方式不止鼠标,因此请使用GotFocus事件确定用户何时进入控件,并使用已验证事件确定用户何时更改数据并退出控件。ASP.net、Winforms、WPF、,Silverlight…?那么初始文本看起来不那么不透明呢?这是另一个问题:您必须覆盖TextBox的OnPaint事件在Windows应用程序中显式设置颜色时要小心。如果有人使用非标准的配色方案,你会把他们搞得一团糟。但是,您可以使用默认系统颜色之一,如禁用的文本颜色或类似的颜色。我们在这里讨论的是winform,而不是首次单击。您可以使用TextBox.Modified属性,该属性只有在用户修改文本框后才变为真。