如何根据Excel文件的存在显示不同的表单?

时间:2017-01-25 17:33:18

标签: .net winforms c#-4.0 visual-studio-2015

我在C#Visual-Studio 2015 Windows窗体中工作 在我的项目中,我有两个Windows窗体:

  1. 的CreateDatabase表格
  2. Form1中表格
  3. 我想在启动我的应用程序(.exe)时实现以下目的:

    如果Excel文件不存在,我想打开CreateDatabase-Form。否则我想打开Form1-Form。

    我在程序的Load-Event中尝试了以下代码:

    CreateDatabase frm = new CreateDatabase();  
    var fileName = string.Format("{0}\\Book3105.xlsx", Directory.GetCurrentDirectory());  
    if (!File.Exists(fileName))  
    {     
      Form1 frm1 = new Form1();  
      frm.Show();  
      frm1.Hide();              
    }
    else  
    {             
      frm.Hide();  
      this.Show();  
    }
    

2 个答案:

答案 0 :(得分:0)

我认为您必须在program.cs进行检查,然后根据excel文件的存在情况触发Application.Run(new Form1);Application.Run(new CreateDatabase );

答案 1 :(得分:0)

在解决方案资源管理器中查找“Program.cs”文件,然后打开它并在那里检查excel文件。

下面是要放在program.cs文件中的代码,请测试一下。

/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    var fileName = string.Format("{0}\\Book3105.xlsx", Directory.GetCurrentDirectory());
    if (!File.Exists(fileName))
    {
        //Create database form when file not exist.
        Application.Run(new CreateDatabase());
    }
    else
    {
        Application.Run(new Form1());
    }
    Application.Exit();
}

如果您有任何疑问或问题,请随时。