我想在我的Windows窗体使用c#的文本框中使用水印?如何使用水印System.Windows.Forms.TextBox使用C#?
我在盒子里发现了this link。但我真的无法弄清楚如何在我的Windows应用程序中使用。
class WatermarkTextBox : TextBox
{
private const uint ECM_FIRST = 0x1500;
private const uint EM_SETCUEBANNER = ECM_FIRST + 1;
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, uint wParam, [MarshalAs(UnmanagedType.LPWStr)] string lParam);
private string watermarkText;
public string WatermarkText
{
get { return watermarkText; }
set
{
watermarkText = value;
SetWatermark(watermarkText);
}
}
private void SetWatermark(string watermarkText)
{
SendMessage(this.Handle, EM_SETCUEBANNER, 0, watermarkText);
}
}
请帮助如何使用SendMessage方法或建议我使用任何其他(简单)的方式来使用水印。
这是很漂亮的车,试试这个:http://stackoverflow.com/questions/4902565/watermark-textbox-in-winforms/4902969#4902969 – 2011-03-14 18:20:33
@Hans。谢谢。我明白了.. +1 – User13839404 2011-03-14 20:12:59
感谢您的评论投票。创造了我的一天。 – 2011-03-14 20:19:02