栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C# > C#教程

WinForm实现为TextBox设置水印文字功能

C#教程 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

WinForm实现为TextBox设置水印文字功能

本文实例展示了WinForm实现为TextBox设置水印文字功能,非常实用的技巧,分享给大家供大家参考。

关键代码如下:

using System;
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace WinFormUtilHelpV2
{
  /// 
  /// 基于.NET 2.0的TextBox工具类
  /// 
  public static class TextBoxToolV2
  {
    private const int EM_SETCUEBANNER = 0x1501;
    [Dllimport("user32.dll", CharSet = CharSet.Auto)]

    private static extern Int32 SendMessage
     (IntPtr hWnd, int msg, int wParam, [MarshalAs(UnmanagedType.LPWStr)] string lParam);

    /// 
    /// 为TextBox设置水印文字
    /// 
    /// TextBox
    /// 水印文字
    public static void SetWatermark(this TextBox textBox, string watermark)
    {
      SendMessage(textBox.Handle, EM_SETCUEBANNER, 0, watermark);
    }
    /// 
    /// 清除水印文字
    /// 
    /// TextBox
    public static void ClearWatermark(this TextBox textBox)
    {
      SendMessage(textBox.Handle, EM_SETCUEBANNER, 0, string.Empty);
    }
  }
}

测试代码如下:

using System;
using System.Windows.Forms;
using WinFormUtilHelpV2;

namespace WinFormUtilHelpV2Test
{
  public partial class WinTextBoxToolV2Test : Form
  {
    public WinTextBoxToolV2Test()
    {
      InitializeComponent();
    }

    private void WinTextBoxToolV2Test_Load(object sender, EventArgs e)
    {
      textBox1.SetWatermark("请输入用户名称....");
      textBox2.SetWatermark("请输入用户密码....");
    }

    private void button1_Click(object sender, EventArgs e)
    {
      textBox1.ClearWatermark();
      textBox2.ClearWatermark();
    }
  }
}

测试效果如下图所示:

希望本文所述的为TextBox设置水印文字功能示例对大家C#程序设计有所帮助!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/126190.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号