Это невозможно. Любая именованная переменная может привязываться к ссылочной переменной соответствующего типа. Это как раз то, как работает язык.
В частности, у вас никогда не было бы конструктора copy с вашим ограничением, поэтому вы не могли бы фактически передать объект по значению!
Вам понадобится объявление пространства имен:
using System.Windows.Forms;
ИЛИ для WPF:
using System.Windows;
Чтобы скопировать точную строку (в данном случае буквальную):
Clipboard.SetText("Hello, clipboard");
Чтобы скопировать содержимое текстового поля :
Clipboard.SetText(txtClipboard.Text);
См. Пример здесь . Или ... Официальная документация MSDN или Здесь для WPF .
Clip.exe является исполняемым файлом в Windows для установки буфера обмена. Примечание , что это не работает на другие операционные системы кроме Windows, который все еще сосет.
/// <summary>
/// Sets clipboard to value.
/// </summary>
/// <param name="value">String to set the clipboard to.</param>
public static void SetClipboard(string value)
{
if (value == null)
throw new ArgumentNullException("Attempt to set clipboard with null");
Process clipboardExecutable = new Process();
clipboardExecutable.StartInfo = new ProcessStartInfo // Creates the process
{
RedirectStandardInput = true,
FileName = @"clip",
};
clipboardExecutable.Start();
clipboardExecutable.StandardInput.Write(value); // CLIP uses STDIN as input.
// When we are done writing all the string, close it so clip doesn't wait and get stuck
clipboardExecutable.StandardInput.Close();
return;
}
Clipboard.SetText("hello");
Для этого вам необходимо использовать пространства имен System.Windows.Forms
или System.Windows
.