我們的主數據庫應用程序具有爲特定工作訂單導出Excel工作簿或Access mdb的功能。這些文件然後發送給我們的分包商以填充所需的數據。我正在構建一個連接到這些文件的應用程序,並在導入到主數據庫之前顯示數據以供審閱。很簡單,對嗎?這是我的問題:應用程序打開一個OpenFileDialog框供用戶選擇將作爲會話數據源的文件。這是完美的。如果我在它之後打開一個MessageBox,那個盒子在任何其他打開的窗口後面打開。之後,他們正確迴應。我只希望使用MessageBoxes進行錯誤處理,但問題很複雜。有沒有人遇到過這個問題?C#使用OpenFileDialog之後,MessageBox不會在頂部打開
代碼中的MessageBoxes僅用於驗證路徑是否正確並解決此問題;但是,這裏是我的代碼:
private void SubContractedData_Load(object sender, EventArgs e)
{
string FilePath;
string ext;
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "Microsoft Access Databases |*.mdb|Excel Workbooks|*.xls";
ofd.Title = "Select the data source";
ofd.InitialDirectory = ElementConfig.TransferOutPath();
if (ofd.ShowDialog() == DialogResult.OK)
{
FilePath = ofd.FileName.ToString();
ext = FilePath.Substring((FilePath.Length - 3));
if (ext == "xls")
{
MessageBox.Show(FilePath);
AccessImport(FilePath);
}
else if (ext == "mdb")
{
MessageBox.Show(FilePath);
AccessImport(FilePath);
}
}
else
{
System.Windows.Forms.Application.Exit();
}
}
消息框是糟糕的調試工具。另外,你可以使用'Path.GetExtension(...)'函數。 – LarsTech
謝謝,我不知道Path.GetExtension()。這非常有用。我仍然想知道爲什麼MessageBox會在後臺出現。 –