在我的Windows窗體的Form_Load事件中,我想顯示一個FolderBrowserDialog讓用戶選擇一個目錄,並且如果他們選擇的目錄無效(意味着它缺少應用程序需要的某些文件),我想顯示它再次。但是,當我創建一個新的FolderBrowserDialog時,它不會出現在我調用ShowDialog時。如何多次顯示一個FolderBrowserDialog?
while (ValidDirectorySelected() == false && tryAgain == true)
{
using (FolderBrowserDialog dialog = new FolderBrowserDialog())
{
dialog.ShowNewFolderButton = false;
if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.Cancel)
{
tryAgain = false;
}
}
}
當我進入它時,第二次到達dialog.ShowDialog()行,然後什麼也沒有發生。該對話框不會出現,並且調試器不會繼續。它只是停止。它第一次完美運作,但不是第二次。我甚至嘗試過在第一個之後複製整個塊並粘貼它,並且發生同樣的事情。該對話框只顯示一次。
我需要做多少次才能顯示一個FolderBrowserDialog?
解決方案:
傳遞 '這個' 來ShowDialog的固定我的問題。我也將使用移到了while循環之外,以避免不必要的重新創建對話框。
只需將'this'傳遞給ShowDialog即可解決問題。謝謝。 – 2010-06-23 18:11:34