2010-05-07 2 views
5

"파일 열기"메뉴 명령과 비슷한 동작을하는 C# 프로그램에서 사용할 수있는 사용자 지정 대화 상자 (양식)를 작성했으며 사용자는 파일 또는 디렉토리를 선택할 수 있습니다.Visual Studio 2010의 C#에서 OpenFileDialog를 사용하는 방법

내가 가진 질문은 이것입니다. "내 컴퓨터"를 루트로 사용합니다. 어떻게하면 네트워크에서 검색 할 수 있습니까? 파일 또는 디렉토리가 네트워크에있는 경우.

또는 Visual Studio 2010에서 즉시 사용할 수있는 일종의 통조림 FileOpenDialog가 있습니까?

내가 http://msdn.microsoft.com/en-us/library/system.windows.forms.openfiledialog.aspx 에서 예제 코드에 설명하지만 컴파일러는 코드 줄에서 사용 DialogResult.OK을 좋아하지 않는 것으로 OpenFileDialog를 호출 시도 :

if(openFileDialog1.ShowDialog() == DialogResult.OK) 

컴파일러는 말한다 :

오류 1 'System.Nullable'에 'OK'에 대한 정의가없고 'System.Nullable'유형의 첫 번째 인수를 허용하는 확장 메서드 'OK'가 없습니다 (using 지시문 또는 a 어셈블리 참조?)

System.Windows.Forms 대신 네임 스페이스 Microsoft.Win32를 사용해 보았지만 어느 것도 작동하지 않았습니다. 둘 다이 오류가 발생했습니다.

답변

9

이 보이는 유형이다 DialogResult라는 변수를 만든 것 같은데.
여기 Microsoft.Win32 네임 스페이스의 MSDN page for WPF dialog boxes입니다.

발췌 :

Microsoft.Win32.OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog(); 
dlg.FileName = "Document"; // Default file name 
dlg.DefaultExt = ".txt"; // Default file extension 
dlg.Filter = "Text documents (.txt)|*.txt"; // Filter files by extension 

// Show open file dialog box 
bool? result = dlg.ShowDialog(); 
2

EDIT : WPF 태그를 놓치 셨습니다. 내 잘못이야. 헨크 홀터 만이 말한 것.

예제에서 알 수있는 네임 스페이스를 추가 했습니까? System.IO?

는 제가 틀릴 수도 있지만, 당신이 윈폼 (System.Windows.Forms) 대화 상자를 사용하려고 같은 System.Nullable

관련 문제