using System; using System.Runtime.InteropServices; using System.Windows.Forms; namespace HStation.RevitDev.RevitRelationMap.Utils { /// /// TextBox 添加水印功能类 /// public static class WaterRemark { 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); public static void SetWatermark(this ComboBox comboBox, string watermark) { SendMessage(comboBox.Handle, EM_SETCUEBANNER, 0, watermark); } /// /// 为ToolStripTextBox设置水印文字 /// ToolStripTextBox /// TextBox /// 水印文字 public static void SetWatermark(this ToolStripTextBox textBox, string watermark) { SendMessage(textBox.TextBox.Handle, EM_SETCUEBANNER, 0, watermark); } /// /// 为ToolStripTextBox设置水印文字 /// ToolStripTextBox /// TextBox /// 水印文字 public static void SetWatermark(this RichTextBox 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); } } }