首页 技术交流 C#winform操作剪切板实现复制粘贴操作的方法 正文

C#winform操作剪切板实现复制粘贴操作的方法

发布日期:2019年05月22日 17:23        阅读次数:1395

操作剪贴版,主要用到了ClipBoard类。

该类位于

System.Windows(WPF)或System.Windows.Forms(Winform)下。

1、设置内容到剪贴版上:

主要用到ClipBoard类下的静态方法SetDataObject()

常用构造函数如下:public static void SetDataObject(Object data,bool copy)

string text = "Hello World";
Clipboard.SetDataObject(text,true);

如果设置为false,或者不设置,将在程序运行结束后不保留剪切板内容。

2、读取

GetDataObject方法被定义为返回下个实现IDataObject接口的类的实例,如下调用:

IDataObject data = ClipBoard.GetDataObject();

data对象包含了需要知道关于剪切板内容的每一样东西。

然后可以用GetDataPresent方法来获取指定类型是否可用

如果剪切板上有一个Bitmap对象,则

data.GetDataPresent(typeof(Bitmap))  返回true

要想从剪切板获得一个对象,可以调用 GetData()方法。例如:

Bitmap bit = (Bitmap)data.GetData(typeof(Bitmap));

 

从剪切板上获得数据不影响剪贴板的内容,GetData的返回值是存储在剪贴板上的副本。

3、判断剪贴板是否为空

if (Clipboard.GetDataObject().GetFormats().Length != 0)
{
 MessageBox.Show("剪贴板不为空");
}
else
{
  MessageBox.Show("剪切版为空");
}


评论:

共 0 页 0 条记录,当前为第 1 页