Try-Catch循环直到成功

Azu*_*iva 0 c#

bool hasCopiedArtikelnum = false;

while (hasCopiedArtikelnum == false)
{
    try
    {
        artikelnum = Clipboard.GetText();
        hasCopiedArtikelnum = true;
    }
    catch {}
}
Run Code Online (Sandbox Code Playgroud)

我希望程序保持循环,直到他成功复制.将其他东西放入"尝试"工作吗?或者程序还会>>尝试<<将hasCopiedArtikelnum设置为true?

Dir*_*mar 5

看起来你真正想要做的就是等到用户将某些内容复制到剪贴板,然后检查剪贴板中是否包含文本Clipboard.ContainsText(正如@CodeCaster和@PatrickHofman所建议的那样).

您可以按照此问题的答案中所述接收剪贴板事件:剪贴板事件C#.

这样的方法要好得多,因为你a)不会使用控制流的异常,b)通过避免永久轮询剪贴板来显着减少CPU负载.