Sendkeys.send忽略消息框

时间:2014-05-30 14:35:22

标签: c# winforms sendkeys

任何时候都应该绕过程序中显示的消息框或自定义框 当sendkeys命令发送时。例如:

SendKeys.Send("{F7}");
if (e.KeyCode == Keys.F7)
{
    DialogResult dialogResult = 
        MessageBox.Show("Are you sure you want to cancel the transacation", 
        "Cancel Trans", MessageBoxButtons.YesNo);

    if (dialogResult == DialogResult.Yes)
    {
        //clear the trans
        textBox1.Text = "";
        textBox1.Focus();
    }
    else
    {
        //close con goes back 
    }
}

如果我在键盘上按 f7 我实际看到了这个并且可以选择

如果我使用sendkeys命令,它不会显示此信息并自动点击是 有没有人碰到这个我已经尝试了sendkeys.sendwait命令,但它做同样的事情只需要更长的时间。

好的我道歉我正在发送关键命令

SendKeys.Send(""+command+"");

该命令包含从数据库中提取的{f7}

我想出了问题,虽然我有一个消息框显示正确的命令,其中有一些其他信息隐藏在那里我猜

command=command.trim();
SendKeys.Send(""+command+"");

修剪命令首先解决了与之相关的任何问题,对不起是每个人的负担

1 个答案:

答案 0 :(得分:-1)

我想出了需要做什么,我需要在发送之前修剪我的命令 显然有一些隐藏的角色

command=command.trim();
SendKeys.Send(""+command+"");