gpt4 book ai didi

c# - 在 Windows 窗体中单击“确定”按钮时如何使焦点回到窗体?

转载 作者:太空宇宙 更新时间:2023-11-03 22:06:08 27 4
gpt4 key购买 nike

我有一个带有多个控件以及“确定”和“取消”按钮的窗口。在 OK 按钮的 Click 事件处理程序中,它检查窗体上是否有错误。如果有错误,我需要表格保持打开状态。但是下面的代码不起作用。如果有错误,它会关闭表单并返回给调用者。我有以下两行来调用和显示表单。

PtForm paymentForm = new PtForm();
ptForm.ShowDialog();

private void btnOk_Click(object sender, EventArgs e)
{
this.ValidateChildren(ValidationConstraints.Visible);
string ErrorString = GetValidationErrors();
MessageBox.Show(ErrorString, "Errors");

if (!string.IsNullOrEmpty(ErrorString))
{
return;
}

//Processing

}

感谢您的帮助。

最佳答案

此代码中没有任何内容可以关闭表单。因此,罪魁祸首一定在这段代码之外。

您是否设置了确定按钮的 DialogResult DialogResult.OK 的属性?这可以解释为什么表格正在关闭。据我所知,如果您在按钮上设置 DialogResult,就会发生这种情况——无法在代码中否决它。

因此在这种情况下,您需要返回到设计器并将按钮的 DialogResult 设置回 None。然后在 btnOk_Click 方法的末尾,一旦您验证了所有输入并确定关闭对话框是安全的,添加一行将 Form 的 DialogResult 属性设置为 OK。

关于c# - 在 Windows 窗体中单击“确定”按钮时如何使焦点回到窗体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8404386/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com