demo效果:
aaarticlea/png;base64,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" alt="" />

(1)创建一个SetWaterText静态类
         需要添加的两个引用:using System.Runtime.InteropServices;using System.Windows.Forms;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace 水印特效
{
public static class SetWaterText
{
[DllImport("user32.dll", CharSet = CharSet.Auto)]
private static extern Int32 SendMessage(IntPtr hWnd, int msg,
int wParam, [MarshalAs(UnmanagedType.LPWStr)] string lParam); [DllImport("user32.dll")]
private static extern bool SendMessage(IntPtr hwnd, int msg, int wParam, StringBuilder lParam); [DllImport("user32.dll")]
private static extern bool GetComboBoxInfo(IntPtr hwnd, ref COMBOBOXINFO pcbi); [StructLayout(LayoutKind.Sequential)]
private struct COMBOBOXINFO
{
public int cbSize;
public RECT rcItem;
public RECT rcButton;
public IntPtr stateButton;
public IntPtr hwndCombo;
public IntPtr hwndItem;
public IntPtr hwndList;
} [StructLayout(LayoutKind.Sequential)]
private struct RECT
{
public int left;
public int top;
public int right;
public int bottom;
} private const int EM_SETCUEBANNER = 0x1501;
private const int EM_GETCUEBANNER = 0x1502; public static void SetCueText(Control control, string text)
{
if (control is ComboBox)
{
COMBOBOXINFO info = GetComboBoxInfo(control);
SendMessage(info.hwndItem, EM_SETCUEBANNER, , text);
}
else
{
SendMessage(control.Handle, EM_SETCUEBANNER, , text);
}
} private static COMBOBOXINFO GetComboBoxInfo(Control control)
{
COMBOBOXINFO info = new COMBOBOXINFO();
//a combobox is made up of three controls, a button, a list and textbox;
//we want the textbox
info.cbSize = Marshal.SizeOf(info);
GetComboBoxInfo(control.Handle, ref info);
return info;
} public static string GetCueText(Control control)
{
StringBuilder builder = new StringBuilder();
if (control is ComboBox)
{
COMBOBOXINFO info = new COMBOBOXINFO();
//a combobox is made up of two controls, a list and textbox;
//we want the textbox
info.cbSize = Marshal.SizeOf(info);
GetComboBoxInfo(control.Handle, ref info);
SendMessage(info.hwndItem, EM_GETCUEBANNER, , builder);
}
else
{
SendMessage(control.Handle, EM_GETCUEBANNER, , builder);
}
return builder.ToString();
}
//SetWaterText.SetCueText(TextBox1,"fdsadf")
}
}

(2)调用即可

 private void button1_Click(object sender, EventArgs e)
{
SetWaterText.SetCueText(textBox1, "请填写用户名");
SetWaterText.SetCueText(textBox2, "请填写密码");
}

用win32API 实现TextBox水印特效的更多相关文章

  1. WPF实现TextBox水印效果

    在日常项目中,一个TextBox需要输入用户名,我们通常的做法是先用一个TextBlock来说明,例如下面的截图: 今天将使用另外一种方式来展示,使用水印的方式.请参考下面的代码: <Windo ...

  2. WPF的TextBox水印效果详解

    一种自以为是的方式: 本来只是想简单的做个水印效果,在文本框内容为空的时候提示用户输入,这种需求挺常见.网上一搜 都是丢给你你一大段xaml代码.用c#代码实现我是不倾向了 既然用wpf就得Xaml啊 ...

  3. WPF 最简单的TextBox水印

    最简单的TextBox加水印的方法,但是不具有很强的通用性. 如果你只是使用一次,或者用的不多,偷偷懒可以使用. 因为此方法只需要修改TextBox的Template,而不用重写何任代码. 注意: 1 ...

  4. 转自:C#中TextBox水印提示的简单实现

    本文转自: 原作者: js2854 出处: http://js2854.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接 ...

  5. WPF自定义控件之水印文本(密码)框

    首先来讲讲创建这个控件的初衷,一个让我很郁闷的问题. 公司的客户端项目采用WPF+MVVM技术实现,在近期地推客户端的过程中遇到了一个很奇葩的问题:在登录界面点击密码框就会直接闪退,没有任何提示 密码 ...

  6. DSAPI+DS控件库 Windows7风格控件演示

    效果图 部分代码 DSAPI.Win7特性.任务栏特效.初始化() '这句非常重要,很多对任务栏特性的操作都需要先初始化 DSAPI.Win7特性.设置任务栏窗口缩略图(Me, My.Resource ...

  7. Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx

    Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx 分类 图像处理知识点体系 v2 qb24.xlsx 分类 分类 理论知识 图像金字塔 常用底层操作 卷积扫描 ...

  8. Atitit 图像处理知识点  知识体系 知识图谱v2

    Atitit 图像处理知识点  知识体系 知识图谱v2 霍夫变换(Hough Transform) 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法.主要用来从图像 ...

  9. Atitit 图像处理知识点  知识体系 知识图谱

    Atitit 图像处理知识点  知识体系 知识图谱 图像处理知识点 图像处理知识点体系 v2 qb24.xlsx 基本知识图像金字塔op膨胀叠加混合变暗识别与检测分类肤色检测other验证码生成 基本 ...

随机推荐

  1. 如何在C#添加鼠标右键菜单

    C#添加鼠标右键方法步骤: 1 选中要添加右键功能的Form或者控件,打开控件的设计页面. 2 从工具箱中找到ContextMenuStrip控件,将这个控件拖曳到Form或者控件的设计页面上.这时系 ...

  2. Delphi-CompareStr 函数

    函数名称 CompareStr 所在单元 System.SysUtils 函数原型 function CompareStr(const S1, S2: string): Integer; 函数功能 比 ...

  3. traceroute命令

    traceroute指令让你追踪网络数据包的路由途径,预设数据包大小是40Bytes,用户可另行设置. 通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径.当然每次 ...

  4. Sublime Text 3 中文汉化绿色破解特别版下载

    Sublime Text是一款代码编辑器,几乎支持所有语言的编写.sublime给人们的印象不外乎小巧.速度快.并且快捷键丰富而强大.不知繁多的插件. sublime一般被应用到前端的开发.Subli ...

  5. codeforces 235 B. Let's Play Osu!

    You're playing a game called Osu! Here's a simplified version of it. There are n clicks in a game. F ...

  6. C# 代码 设置 前台 页面 JS提示

    方法1: Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert ...

  7. 转:Hprose for php(一)——快速入门

    文章来自于:http://blog.csdn.net/half1/article/details/21095665 本文参考了Hprose官方的用户手册,Hprose官网:http://www.hpr ...

  8. 初识Java反射机制

    1.ClassLoader的类加载机制:并非一次性加载,而是需要的时候加载(运行期间动态加载)(Class文件加载到内存的代码段),static语句块在加载后执行一次.dynamic语句块(就是一个语 ...

  9. zoj 3787 Access System

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5274 #include <cstdio> #include < ...

  10. 一个修改过简化版的InputQuery(简单实用,用到了Canvas)

    主要是觉得在单输入的情况下, 原来InputQuery输入框左边的文本太难看了...... function _InputQuery(const ACaption: string; const APr ...