Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何通过一个表单将数据库文件名传递给另一个表单_C#_Winforms_Global Variables_Database Connection - Fatal编程技术网

C# 如何通过一个表单将数据库文件名传递给另一个表单

C# 如何通过一个表单将数据库文件名传递给另一个表单,c#,winforms,global-variables,database-connection,C#,Winforms,Global Variables,Database Connection,在我的windows应用程序中,我使用MS access数据库。在mainForm(包含菜单)中,用户将通过对话框选择(打开)数据文件。他将能够选择一个菜单来访问其他表单 在这里,我需要将数据文件名存储在一个变量中,并在连接字符串中使用相同的数据文件名来从所选数据文件中获取数据 如何将选定的数据库文件名通过一个表单传递给另一个表单 在表1中,我声明了一个变量 public string dtFile; 我将文件路径存储在打开文件对话框的dtfile变量中 dtFile=openFileDial

在我的windows应用程序中,我使用MS access数据库。在mainForm(包含菜单)中,用户将通过对话框选择(打开)数据文件。他将能够选择一个菜单来访问其他表单

在这里,我需要将数据文件名存储在一个变量中,并在连接字符串中使用相同的数据文件名来从所选数据文件中获取数据

如何将选定的数据库文件名通过一个表单传递给另一个表单

在表1中,我声明了一个变量

public string dtFile;
我将文件路径存储在打开文件对话框的
dtfile
变量中

dtFile=openFileDialog.FileName

在我写的表格2中

Form1 frm=新的Form1;
字符串strDataFile=frm.dtFile


这里我得到的是空值。如何从2中获取表格1的dtFile变量的数据你可以这样做,你将能够在另一个表格中访问表格1的所有内容:

private void button1_Click(object sender, EventArgs e)
    {
    Form1 newform = new Form1();
            newform = this;
            this.Hide();
            MySecform = new Form2(ref newform);
            MySecform.Show();
    }
另一种方法是使用自定义事件:

详情如下:

如果希望在应用程序的所有形式中都可以访问该值,还可以创建一个静态类

static class Global
{
    private static string _globalVar = "";

    public static string GlobalVar
    {
        get { return _globalVar; }
        set { _globalVar = value; }
    }
}

在第一种形式中,将
dtFileName
声明为静态变量

 public static string dtFileName;
关于通过对话框选择文件名

dtFileName = openFileDialog.FileName;
表格二

public partial class Form2 : Form
    {        
        string strDataFilePath = "";

        public Form2 ()
        {
            InitializeComponent();            
            strDataFilePath = Form1.dtFileName.ToString();
        }
    }

您可以传入第二个的构造函数form@Ehsan萨贾德。文件名公共变量的格式为1。我在Form2中创建了一个form1对象。这里我没有得到数据。它显示为
null
查看答案希望它能引导您找到正确的方法在表格1中选择数据文件。我将数据文件存储在一个公共变量中。我需要在整个应用程序中使用数据文件名。