首先创建一个用户控件名称为WatermakTextBox,让其继承textbox,代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;

namespace UpdateSetting
{
    public partial class WatermakTextBox : TextBox
    {
        private readonly Label lblwaterText = new Label();

        public WatermakTextBox()
        {
            InitializeComponent();
            lblwaterText.BorderStyle = BorderStyle.None;
            lblwaterText.Enabled = false;
            lblwaterText.BackColor =Color.White;
            lblwaterText.AutoSize = false;
            lblwaterText.Top = 1;
            lblwaterText.Left = 0;
            Controls.Add(lblwaterText);
        }

        [Category("扩展属性"), Description("显示的水印提示信息")]
        public string WaterText
        {
            get { return lblwaterText.Text; }
            set { lblwaterText.Text = value; }
        }

        public override string Text
        {
            set
            {
                if (value != string.Empty)
                    lblwaterText.Visible = false;
                else
                    lblwaterText.Visible = true;
                base.Text = value;
            }
            get { return base.Text; }
        }

        protected override void OnSizeChanged(EventArgs e)
        {
            if (Multiline && (ScrollBars == ScrollBars.Vertical || ScrollBars == ScrollBars.Both))
                lblwaterText.Width = Width - 20;
            else
                lblwaterText.Width = Width;
            lblwaterText.Height = Height - 2;
            base.OnSizeChanged(e);
        }

        protected override void OnEnter(EventArgs e)
        {
            lblwaterText.Visible = false;
            base.OnEnter(e);
        }

        protected override void OnLeave(EventArgs e)
        {
            if (base.Text == string.Empty)
                lblwaterText.Visible = true;
            base.OnLeave(e);
        }

    }
}

然后将生成后的用户控件放到自己的项目中使用即可

相关文章:

  • 2021-05-27
  • 2022-12-23
  • 2021-08-26
  • 2022-12-23
  • 2022-01-10
  • 2021-05-24
  • 2021-11-24
猜你喜欢
  • 2021-08-10
  • 2021-06-21
  • 2021-12-17
  • 2021-08-08
  • 2022-01-23
相关资源
相似解决方案