Jos*_*ins 4 .net c# clipboard mono
我正在使用OS X上的Mono在C#中编写一个控制台应用程序.
在Windows上,以下是将文本复制到剪贴板的方法:
Clipboard.SetText("text");
Run Code Online (Sandbox Code Playgroud)
...从标记有STAThread属性的方法:
[STAThread] // for OLE
public static void Main (string[] args)
{
Clipboard.SetText("text");
}
Run Code Online (Sandbox Code Playgroud)
剪贴板在System.Windows.Forms中定义.该代码在Windows 上的官方Microsoft .NET运行时和 OS X上的Mono运行时下编译和运行.
在Windows上,文本被复制,因此不存在忘记引用或using语句的问题.
不幸的是,当我在Mono/OS X下运行代码时,文本实际上并未复制到剪贴板.我的Dock上出现了一些快速的东西然后消失得很快,但不管怎样,我正在尝试复制的文本不会最终放在剪贴板上.
那么:我如何复制文本使用Mono在OS X(和Linux?)上做剪贴板?
如果您对查看整个项目感兴趣,请访问以下代码:https://github.com/leeohsheeus/boom-sharp.
如果您想使用Mono为多个平台编程,Gtk.Clipboard可能会对您感兴趣.
最低使用量 - 示例:
Gtk.Clipboard clipboard = Gtk.Clipboard.Get(Gdk.Atom.Intern("CLIPBOARD", false));
clipboard.Text = "Hello World";
Run Code Online (Sandbox Code Playgroud)
此Stackoverflow问题可能也很有趣.