0

我尝试过这样的事情:

  • 以对话框形式启动表单并询问用户有关保修的信息
  • 如果用户单击 OK,Form 将返回 DialogResult.OK
  • Form1 从 program.cs 开始

那是我的代码program.cs

    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Form f = new Form2();
    if(f.DialogResult == DialogResult.OK)
    Application.Run(new Form1());

我不知道为什么这不起作用。不显示任何形式。

4

4 回答 4

3

我不知道为什么这不起作用。不显示任何形式。

因为您正在检查对话框结果,而实际上没有向用户显示表单并要求他按确定或取消。

像这样做

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form f = new Form2();
if(f.ShowDialog() == DialogResult.OK)  // note the change here.
    Application.Run(new Form1());
于 2013-08-23T10:51:18.657 回答
1

您永远不会调用ShowDialogForm2 类型的 f。

于 2013-08-23T10:51:06.950 回答
1

它是如何工作的,没有显示任何模态。

一个DialogResult,表示用作对话框时表单的结果。

于 2013-08-23T10:54:45.883 回答
0

我知道这个问题很老了,但是为了将来的搜索。

您为表单命名的名称将出现在 program.cs 中。确保表格中的名称正确。

namespace Yournamespace
{
public partial class Form1 : Form
{

    public Form1()
    {
        InitializeComponent();
    }

请注意,Form1可能会有所不同,并且该名称将出现在 program.cs

于 2018-12-11T07:52:43.667 回答