将目录结构传递给另一个表单

时间:2015-05-19 13:52:38

标签: c#

程序正在做的是允许员工将程序文件加载并运行到工厂的机器上。应用程序启动到包含许多不同程序的网络上的默认目录,它们选择运行它们并运行它。

我所做的是创建一个管理表单,以便我们可以访问任何计算机并更改他们正在访问的目录(将添加更多要更改的选项)。

所以它发起了对"C:\Files\"的说法。稍后我进入管理员表单并将其更改为"D:\Files\"。我似乎无法将新的目录列表传递给主窗体。

的MainForm

private void Main_Load(object sender, EventArgs e)
{
    txtsaveprogram.Visible = false;
    this.Size = new Size(444, 579);
    MachineID();

    string[] files = System.IO.Directory.GetFiles(tempvar, "*.NC");

    foreach (string file in files)
    {
        string fileName = Path.GetFileName(file);               
        cmbfiles.Items.Add(fileName);       
    }
}

目前tempvar = @"\\hq1\MFG\DNC\Grinders\PR";

AdminForm

namespace MachineConfig
{
    public partial class adminconfig : Form
    {
        public string programdefaultpath { get; set; }

        public adminconfig()
        {
            InitializeComponent();
            this.DialogResult = System.Windows.Forms.DialogResult.Cancel;
        }

        public void adminconfig_Load(object sender, EventArgs e)
        {
            string[] dir = System.IO.Directory.GetDirectories(@"\\hq1\MFG\DNC\");
            foreach (string filedir in dir)
            {
                string dirpath = Path.GetFileName(filedir);
                comboBox1.Items.Add(dirpath);
            }
        }

        private void btndirectory_Click(object sender, EventArgs e)
        {
            string[] subdir = System.IO.Directory.GetDirectories(@"\\hq1\MFG\DNC\" + comboBox1.Text);
            foreach (string filesub in subdir)
            {
                string subdirpath = Path.GetFileName(filesub);

                comboBox2.Items.Add(subdirpath);
            }
        }

        private void adminconfig_FormClosing(object sender, FormClosingEventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {           
            this.DialogResult = System.Windows.Forms.DialogResult.OK;
        }
    }
}

如何让这些新选择的目录成为它们在主窗体上的目录,以便下拉框现在显示新选择目录的新内容?

0 个答案:

没有答案