2

一部の特殊文字の入力に少し問題がありますSendKey.Send("~!@#$%^&*()_+|")

と入力しようとすると~!@#$%^&*()_+|、 のみ!@#$*_|が入力されます。

これを回避する方法はありますか?最初に string を に収集するのでListBox、実際に入力する前にこれらの文字を置き換えることもできます。これを回避する別の方法があるかどうか疑問に思っています。

参考までに、これは私がこれを行う方法です:

private string textToPseudo(string text)
{
    string temp = string.Empty;

    foreach (char c in text)
    {
        if (c == ' ')
            temp += " ";
        else
            temp += "{" + c + "}";
    }
    return temp;
}
4

1 に答える 1

3

一部の文字は、SendKeys にとって特別な意味を持ちます。たとえば、% は Alt キー、^ は Ctrl キー、+ は Shift キーです。それらを使用するには、中かっこ {} で囲む必要があります

于 2013-05-20T21:33:14.457 に答える