【问题标题】:Start a process with DialogResult c#使用 DialogResult c# 启动进程
【发布时间】:2019-03-22 03:34:12
【问题描述】:

我实际上正在编写一个程序,它使用 Microsoft.Office.Interop.Excel 创建我需要的特定 excel 文件。这很好用。

我的程序创建,然后保存并关闭新的 excel 文件(工作正常)。

 sheet.SaveCopyAs(path);
 sheet.Saved = true;
 sheet.Close(true, misValue, misValue);
 excel.Quit();

当新的 Excel 文件创建成功后,会打开一个 DialogResult 框并询问我是否要打开新的 Excel 文件

DialogResult dr = MessageBox.Show("Open new file?", "text", MessageBoxButtons.YesNo);
          {
             if (DialogResult == DialogResult.Yes)
             {
                  Process.Start(path);
             }
             else if (DialogResult == DialogResult.No)
             {                          
                   this.Close();
             }

但是当我按下 YES 时,什么也没有发生,新文件没有打开。

我尝试在我的表单上添加一个按钮

 private void button4_Click(object sender, EventArgs e)
        {
            Process.Start(path);
        }

这种方法可行,但为什么对话框结果框没有打开我的新 Excel 文件?

【问题讨论】:

    标签: c# winforms dialogresult


    【解决方案1】:

    您的对话结果值存储在dr,因此您应该比较dr

    DialogResult dr = MessageBox.Show("Open new file?", "text",  
                                      MessageBoxButtons.YesNo);
    if (dr == DialogResult.Yes)
    {
        Process.Start(path);
    }
    else if (dr == DialogResult.No)
    {                          
         this.Close();
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-19
      • 1970-01-01
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多