在C#中,可以使用Windows窗口的剪贴板功能来实现快捷键控制复制粘贴。以下是一个简单的示例,展示了如何通过处理键盘事件来实现复制粘贴的功能。
using System;
using System.Windows.Forms;
public class ClipboardShortcuts
{
private TextBox _textBox;
public ClipboardShortcuts(TextBox textBox)
{
_textBox = textBox;
_textBox.KeyDown += TextBox_KeyDown;
}
private void TextBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.Modifiers == Keys.Control && e.KeyCode == Keys.C) // Ctrl + C
{
CopyToClipboard();
e.Handled = true;
}
if (e.Modifiers == Keys.Control && e.KeyCode == Keys.V) // Ctrl + V
{
PasteFromClipboard();
e.Handled = true;
}
}
private void CopyToClipboard()
{
if (!string.IsNullOrEmpty(_textBox.SelectedText))
{
Clipboard.SetText(_textBox.SelectedText);
}
}
private void PasteFromClipboard()
{
if (Clipboard.ContainsText())
{
_textBox.SelectedText = Clipboard.GetText();
}
}
}
使用方法:
创建
ClipboardShortcuts
的实例,并传入一个TextBox
控件。当用户在文本框中按下组合键Ctrl + C时,调用
CopyToClipboard
方法复制所选文本。当用户在文本框中按下组合键Ctrl + V时,调用
PasteFromClipboard
方法将剪贴板的文本粘贴到文本框中。
确保你的应用程序有对System.Windows.Forms
命名空间的访问权限,并且在合适的地方初始化ClipboardShortcuts
。