如何在c#中粘贴剪贴板中的一行
本文关键字:一行 剪贴板 | 更新日期: 2023-09-27 18:14:03
如何在c#中粘贴剪贴板中的一行?
我得到一个argumentNullException在这一行:
剪贴板。SetText(nextLine(clipboardText));
我有nextLine()返回一个空字符串,如果它不能从剪贴板获取文本,所以它不应该返回null。
当我按CTRL + C时,它会获得所有剪贴板文本并将其存储在clipboardText中。
当我按CTRL + V时,它应该将clipboardText的顶部行粘贴到系统剪贴板中,然后粘贴。
if (Keys.C == (Keys)vkCode && Keys.Control == Control.ModifierKeys)
{
Console.WriteLine("CTRL+C");
clipboardText = getTheClipboardText();
}
else if (Keys.V == (Keys)vkCode && Keys.Control == Control.ModifierKeys)
{
Clipboard.SetText(nextLine(clipboardText)); //nextline returns a string of one line
clipboardText = removeFirstLine(clipboardText); //remove first line returns a string missing the first line
}
}
听起来nextLine
在某些情况下返回null
,因此您需要考虑如何处理它。例如:
string line = nextLine(clipboardText);
if (line == null)
{
// Nothing more to do.
return ...; // TODO: Work out what value to return
}
Clipboard.SetText(line);
clipboardText = removeFirstLine(clipboardText);
或者,如果你的nextLine
方法不应该返回null,那么这表明它有一个错误。