0

我创建了一个带有标记为“确定”和“取消”按钮的新表单。单击第一个表单中的按钮会弹出该表单。只有在新的自定义表单中单击“确定”按钮时,我才想运行一些代码。这不是 MessageBox()。

到目前为止,我有这样的事情:

CustomForm c = new CustomForm();
DialogResult r = c.DialogResult;

c.ShowDialog();

if (r == DialogResult.OK)
{
    //Run code
}

然而,这不起作用。我该如何正确编码?我还将“确定”按钮设置为 CustomForm 中的 AcceptButton。

4

3 回答 3

4

也许更喜欢像这样压缩它:

CustomForm c = new CustomForm();

if (c.ShowDialog() == DialogResult.OK) {
    // run code
}

另外,请记住,您必须将另一个表单上按钮的 DialogResult 设置为 OK:

DialogResult 属性

DialogResult是一个enum。因此,它是按值复制的……而不是按引用复制的。

于 2012-12-18T03:33:41.777 回答
0

您需要在访问结果之前显示对话框。现在您正在创建对话框,将值存储在变量中,然后允许用户更改对话框的结果。这不会更改存储在变量中的值。

于 2012-12-18T03:35:16.297 回答
0

您已经提到它们是两个按钮,那么您可以使用 OK 按钮的按钮单击事件来执行您的操作。如果我理解您的问题,这可能是正确的..//

于 2012-12-18T03:44:00.820 回答