小编典典

C#中如何将数据复制到剪贴板

all

如何在 C# 中将字符串(例如“hello”)复制到系统剪贴板,所以下次我按下时CTRL+V会得到“hello”?


阅读 89

收藏
2022-03-11

共1个答案

小编典典

有两个类存在于不同的程序集和不同的命名空间中。

  • WinForms:使用以下命名空间声明,确保Main标记有[STAThread]属性:

    using System.Windows.Forms;
    
  • WPF:使用以下命名空间声明

    using System.Windows;
    
  • 控制台:添加对 的引用System.Windows.Forms,使用以下命名空间声明,确保Main标记有[STAThread]属性

    using System.Windows.Forms;
    

要复制一个精确的字符串(在这种情况下是字面量):

Clipboard.SetText("Hello, clipboard");

要复制文本框的内容,请使用TextBox.Copy()或先获取文本,然后设置剪贴板值:

Clipboard.SetText(txtClipboard.Text);

有关示例,请参见此处。或者......官方 MSDN 文档WPF 的 Here


评论:

  • 剪贴板是桌面 UI 概念,尝试在像 ASP.Net 这样的服务器端代码中设置它只会在服务器上设置值,对用户在浏览器中可以看到的内容没有影响。虽然链接的答案让一个人在剪贴板访问代码服务器端运行SetApartmentState它不太可能是您想要实现的。
2022-03-11