打印本文 打印本文  关闭窗口 关闭窗口  
在有剪贴板的应用程序间移动数据
作者:佚名  文章来源:不详  点击数  更新时间:2008/5/28 13:56:52  文章录入:杜斌  责任编辑:杜斌

   VB.net中的CliPBoard对象(在System.Windows.Forms命名空间里)允许你在一个应用程序或几个应用程序之间存储和检索数据。使用Clipboard对象非常简单,就像下面这样:

  注释:拷贝数据
  Clipboard.SetDataObject(TextBox1.Text)

  注释:粘贴数据
  TextBox2.Text = Clipboard.GetDataObject().GetData(DataFormats.Text, _ False)

  这段代码对于简单的文本数据非常有效;然而,要想在应用程序之间复制和粘贴或者是进行其他的操作,你需要提供多种的数据格式。你给数据提供的可用格式越多,其他应用程序就越有可能使用这个数据。

  通过创建一个DataObject,你可以根据你的需要把数据以多种格式存储。你还可以用GetDataPresent方法来检查某个格式是否被支持。

  下面的代码介绍了如何用DataObject来存储RTF数据和文本数据。同时,这段代码还说明了如何用GetDataPresent来查看所有支持的格式。

  Dim ClipboardData As New DataObject()

  ClipboardData.SetData(DataFormats.Rtf, RichTextBox1.Rtf)

  ClipboardData.SetData(DataFormats.Text, RichTextBox1.Text)

  Clipboard.SetDataObject(ClipboardData)

  If Clipboard.GetDataObject().GetDataPresent(DataFormats.Text) Then
  TextBox2.Text = Clipboard.GetDataObject().GetData(DataFormats.Text)
  End If

  If Clipboard.GetDataObject().GetDataPresent(DataFormats.Rtf) Then
  RichTextBox2.Rtf = Clipboard.GetDataObject().GetData(DataFormats.Rtf)
  End If

  Clipboard及其对多种格式的支持使得你的应用程序可以支持标准的Windows剪切和粘贴功能。通过为Clipboard提供多种数据格式,你还可以把你的应用程序和其他应用程序更紧凑的整合起来。

打印本文 打印本文  关闭窗口 关闭窗口