| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- using System.Drawing;
- using System.Windows.Forms;
- namespace UAS_MES.CustomControl.TextBoxWithIcon
- {
- public partial class TextBoxWithPlaceHolder : EnterTextBox
- {
- //记录一个PlaceHolder,第一次对这个文本框赋的值
- string PlaceHolder1;
- public string PlaceHolder
- {
- get
- {
- return PlaceHolder1;
- }
- set
- {
- PlaceHolder1 = value;
- }
- }
- public TextBoxWithPlaceHolder()
- {
- InitializeComponent();
- this.GotFocus += TextBoxWithPlaceHolder_GetFocus;
- }
- private void TextBoxWithPlaceHolder_GetFocus(object sender, System.EventArgs e) {
- }
- private void TextBoxWithPlaceHolder_Leave(object sender, System.EventArgs e)
- {
- //失去焦点的时候如果文本框存在内容就把文字变色
- BackColor = Color.White;
- if (Text == "")
- {
- ForeColor = Color.Silver;
- Text = PlaceHolder1;
- }
- }
- private void TextBoxWithPlaceHolder_Enter(object sender, System.EventArgs e)
- {
- BackColor = Color.GreenYellow;
- ForeColor = Color.Black;
- //如果文本框的内容等与PlaceHolder就将文本框清空
- if (Text == PlaceHolder1)
- {
- Clear();
- }
- }
- private void textBox1_TextChanged(object sender, System.EventArgs e)
- {
- //由于PlaceHolder可能是在加载完窗体之后赋值,所以在TextChanged中再次判断
- if (PlaceHolder1 == "")
- {
- PlaceHolder1 = Text;
- }
- }
- }
- }
|