gpt4 book ai didi

c# - AcceptButton不会关闭表单

转载 作者:行者123 更新时间:2023-12-01 18:53:17 28 4
gpt4 key购买 nike

我有两个非常相似的表单,但在其中一个表单中,单击 AcceptButton 会关闭表单,而在另一个表单中,则不会关闭表单。它们的 AcceptButton 设置为 btnAccept

我最近创建了第二个,第一个已经存在了一段时间并且是由其他人创建的。

它们都是这样打开的:

using(var form = new SomeDialog(dependency))
{
form.StartPosition = FormStartPosition.CenterParent;
form.ShowDialog(this);
}

它们都按照这些方式处理接受按钮单击。

private void btnAccept_Click(object sender, EventArgs e)
{
_dependency.DoSomething(userInput);
}

发布我的整个设计器文件可能不会有帮助。有什么特别有助于展示的内容吗?我在 StackOverflow 上找不到类似的帖子。

我错过了什么导致了不同的行为?

最佳答案

AcceptButton 属性仅选择按下 Enter 键时将执行默认操作的按钮。在用户界面中清晰可见,按钮周围有粗边框。但这还不够,您仍然需要实现默认操作。

一个简单的方法是在设计器中设置按钮的 DialogResult 属性。这没关系,但当您的事件处理程序执行诸如验证对话框内容之类的操作时,往往会引起意外,如果您不满意,则必须将表单的 DialogResult 属性设置回 None 。我个人更喜欢始终在 Click 事件处理程序中显式设置表单的 DialogResult。这是可调试的代码,让我看看为什么它“不起作用”。

关于c# - AcceptButton不会关闭表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32129386/

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