FolderBrowserDialog正在自动关闭我的C#应用​​程序

时间:2012-11-11 07:21:19

标签: c# .net winforms folderbrowserdialog

我在Visual C#Express 2010中开发我的C#应用​​程序,当我打开FolderBrowserDialog时,它打开很好,我也能够获取文件夹名称和文件。

相同的应用程序(我也没有更改任何单行代码),我已经在Visual Studio 2010中打开了终极版。在调试应用程序时,我没有遇到任何问题。

但是,在通过应用程序打开FolderBrowserDialog时(单击单选按钮时),应用程序自动关闭而没有任何错误(我在try-catch本身有代码。甚至没有任何异常)。

这是关闭应用程序的简单代码:

DialogResult getFolderDialogResult = folderBrowserDialog1.ShowDialog();

在评论上述内容时,申请表尚未结束。

注意: 我刚刚在调用folderBrowserDialog之前添加了openFileDialog,我想知道,它运行正常。

openFileDialog1.ShowDialog();
DialogResult getFolderDialogResult = folderBrowserDialog1.ShowDialog();

还有一个注意:我创建了新项目并尝试了FolderBrowserDialog。工作正常:(

我的代码:

        try
        {
            MessageBox.Show("Select Folder Radio Button CLicked", "Radio Button", MessageBoxButtons.OK);
            string[] getFilesList = null;
            listBoxSelectSheetsMFR.DataSource = getFilesList;

            if (listBoxSelectSheetsMFR.Items.Count > 0)
            {
                listBoxSelectSheetsMFR.Items.Clear();
            }

            String tempString = "";
            ArrayList onlyFileNames = new ArrayList();
            String invalidFormat = "No";
            String folderPath = "";
            //Open Folder Selection Dialog
            DialogResult getFolderDialogResult = folderBrowserDialog1.ShowDialog();

            if (getFolderDialogResult == DialogResult.OK)
            {
                folderPath = folderBrowserDialog1.SelectedPath;
                MessageBox.Show(folderPath, "Folder Path", MessageBoxButtons.OK);

                //Get All Files
                getFilesList = Directory.GetFiles(folderPath);

                for (int i = 0; i < getFilesList.Length; i++)
                {
                    if (!Path.GetExtension(getFilesList[i].ToString()).Equals(".xls"))
                    {
                        invalidFormat = "Yes";
                    }
                }

                if (invalidFormat.Equals("No"))
                {
                    panelSelectSheetsMFR.Visible = true;

                    //Enable the ListBox and load the filenames
                    for (int i = 0; i < getFilesList.Length; i++)
                    {
                        tempString = getFilesList[i].ToString().Replace(folderPath + "\\", "");
                        onlyFileNames.Add(tempString.Replace(".xls", ""));
                    }

                    //Adding Items into ListBox
                    listBoxSelectSheetsMFR.DataSource = onlyFileNames;
                }
                else
                {
                    MessageBox.Show("One of file is having invalid Format. Please make sure all files \nshould be .xls format.", "Format Error", MessageBoxButtons.OK);
                }
            }
            MessageBox.Show(getFilesList.Length.ToString(), "# of Files", MessageBoxButtons.OK);
        }
        catch (Exception selectFolderExMsg)
        {
            MessageBox.Show(selectFolderExMsg.ToString(), "selectFolderRadioButtonFN", MessageBoxButtons.OK);
        }

0 个答案:

没有答案