2013-04-15 2 views
-2

Я написал этот код Выбор только PDF-файлов, но он не работаетОткрыть файл Диалог

OpenFileDialog fd = new OpenFileDialog(); 
fd.ShowDialog(); 
fd.Filter = "Pdf files (*.Pdf)|*.Pdf"; 
+7

Попробуйте установить фильтр перед вызовом 'ShowDialog()'. Установка после этого не будет работать так, как вы ожидаете. –

ответ

11

Вам нужно установить Filterсначала перед открытием диалогового.

OpenFileDialog fd = new OpenFileDialog(); 
fd.Filter = "Pdf files (*.Pdf)|*.Pdf"; //this should be before 
fd.ShowDialog(); 
1

Хабиб имеет правильный ответ, но я чувствовал, что я хотел бы добавить, что вы должны проверить ответ на ShowDialog, чтобы гарантировать, что пользователь не отменить диалоговое окно. Если они отменили диалоговое окно без выбора файла, то OpenFileDialog скажет, что имя файла «", что не будет полезно в остальной части вашего приложения.

Пример

OpenFileDialog fd = new OpenFileDialog(); 
fd.Filter = "PDF Files(*.pdf)|*.pdf"; 
if (fd.ShowDialog() == System.Windows.Forms.DialogResult.OK) 
{ 
    // Do stuff here 
} 
else 
{ 
    // The user cancelled the request to select a PDF 
} 

Надеется, что это помогает

Смежные вопросы