取消FormClosing事件时如何将焦点设置到窗体上的控件?

时间:2014-04-27 02:44:40

标签: c# .net winforms event-handling formclosing

我正在验证表单FormClosing事件上文本框的输入,如果用户决定取消关闭,我设置e.Cancel = true以便停止FormClosing事件。然后我尝试将焦点设置到第一个文本框但这不起作用。

private void AddDriver_Window_FormClosing(object sender, FormClosingEventArgs e)
{
    if (this._Cancel(sender, e))
    {
        e.Cancel = true;
        this.textboxFirstName.Focus();
    }
}

如果您有兴趣查看._Cancel方法,我会问一个无关的问题earlier

1 个答案:

答案 0 :(得分:1)

我试过这个检查这对你有用..

private void AddDriver_Window_FormClosing(object sender, FormClosingEventArgs e)
{
    if( DialogResult.Cancel == MessageBox.Show("Do you want to exit programm","Alert",MessageBoxButtons.OKCancel))
    {
        e.Cancel = true;
        textBox1.Focus();
    }
}

这将弹出一个消息框,如果单击取消,则自动将焦点放在文本框1上。