【问题标题】:How to change TextBox border color and Style while typing?输入时如何更改文本框边框颜色和样式?
【发布时间】:2017-02-19 00:55:57
【问题描述】:

我正在编写一个 C# 编程,它有几个文本框,可以提供来自用户的一些信息。我有一个“提交”按钮来保存输入的信息。 我希望这个文本框像这样工作: A. 当没有输入信息时,按下提交按钮,文本框周围会显示一个粗红色边框。 B.当用户被注意到,并尝试在相应的文本框中输入一些信息时,在一定数量的字母后(例如至少输入4个字母后),文本框的边框样式将切换为常规样式!

如果您能帮助我,我将不胜感激! 我搜索了很多文本框边框颜色,但找不到任何有用的东西。

【问题讨论】:

标签: c# textbox border


【解决方案1】:

首先,每当您在 SO 中提出问题时,您都必须付出一些努力并展示您的尝试,以便人们愿意帮助您。将其作为未来问题的注释。

话虽如此,您必须向 TextBox 控件的 TextChanged 事件添加一个处理程序。然后您必须根据需要更改属性:

private void textBox1_TextChanged(object sender, EventArgs e)
{
    //PUT THE BUSINESS LOGIC IN HERE
    if(textBox1.Text = "")
    {
                textBox1.BorderStyle = BorderStyle.None;
                Pen p = new Pen(Color.Red);
                Graphics g = e.Graphics;
                int variance = 3;
                g.DrawRectangle(p, new Rectangle(textBox1.Location.X - variance, textBox1.Location.Y - variance, textBox1.Width + variance, textBox1.Height +variance ));
    }
    else
    {
        textBox1.BorderStyle = BorderStyle.FixedSingle;
    }
}

【讨论】:

  • 这行不通,因为它甚至无法编译。另外,你怎么知道 OP 正在使用 windows 窗体?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多