Мне не удалось смоделировать проблему, которую вы описываете, я проверил ее:
Создайте новый Form
Form1
, добавьте к нему button1
и в обработчике button1.Click
скопируйте этот код:
private void button1_Click(object sender, EventArgs e)
{
using (FolderBrowserDialog dialog = new FolderBrowserDialog())
{
dialog.ShowNewFolderButton = true;
if (dialog.ShowDialog(this) == System.Windows.Forms.DialogResult.OK)
{
string path = dialog.SelectedPath;
Console.WriteLine(path);//will not print new folder if the file renamed.
}
}
}
Это сработало, как и ожидалось, создав новую папку и дважды нажав клавишу ввода. или путем создания новой папки и нажмите кнопку ОК.
Используете ли вы сторонние элементы управления пользовательским интерфейсом, theams ...
Редактировать: Вы указали:
Да, если этот пример запускается в приложении Windows, он работает правильно. Но
мое приложение Excel надстройка. И FolderBrowserDialog работают, что я
напиши в начало сообщения
Таким образом, вы используете стороннюю «надстройку Excel». При использовании третьей стороны с FolderBrowserDialog
или OpenFileDialog
.. вы можете заметить странное поведение в зависимости от третьей стороны.
Решением проблемы, которую вы описали, является отключение ShowNewFolderButton
или реализация собственного пользовательского OpenFileDialog
.