본문 바로가기

WPF에서 FolderBrowserDialog 대신 CommonOpenFileDialog 사용하기 ( 폴더 선택 창)

클럽샌드위치 2023. 9. 8.
반응형

 

CommonOpenFileDialog

 

WPF 에서는 보통 이렇게 트리형식의 폴더 선택 창이 제공됩니다.

FolderBrowserDialog..

근데 사용자에게는 트리구조 폴더 선택 창이 불편합니다.

 

파일선택창 (OpenFileDialog)와 같은 UI를 쓰는게 유저들에게는 편리합니다.

서치해보니 이런 창들을 쓰는게 편리하더라구요.

 

 

사용하는 방법은 두가지 있습니다

적용방법 1  - NuGet 사용

추가할 해당 프로젝트에서 마우스 오른쪽 클릭 선택합니다.

 

Manage NuGet Packages..

NuGet을 선택합니다.

또는 맨 위 Search 창에서 nuget을 검색하거나

맨위 Project > Manage Nuget Packages를 선택합니다.

APICodePack.Shell을 설치합니다.

 

설치하면 References에서 Microsoft.Windows.APICodePack

Microsoft.Windows.APICodePack.Shell이 생깁니다.

 

적용방법2 - dll 사용

 

솔직하게 말해서 Microsoft.Windows.APICodePack 까지 dll 포함할 필요는 없습니다.

가볍게 사용하고 싶은분들, 용량을 줄이고 싶은분들은

Microsoft.Windows.APICodePack.Shell 이것만 사용해도 충분합니다.

해당 프로젝트에서 References를 선택 한 후 Add Reference를 선택합니다.

 

브라우저 Browse 에서 Microsoft.Windows.APICodePack.Shell.dll 경로를 찾고

Okay 합니다.

 

 

 

이렇게 추가하면 됩니다.

 

 

 

dll 다운로드

Microsoft.WindowsAPICodePack.Shell.dll
0.49MB

해당 버전는 1.1.8  버전 입니다. (2022년 7월 11일)

 

코드

맨앞에는 using 을 써줍니다.

using Microsoft.WindowsAPICodePack.Dialogs;

 

코드블록

        var dlg = new CommonOpenFileDialog();
        dlg.IsFolderPicker = true;
        dlg.DefaultDirectory = "D:\\";
       
        if (dlg.ShowDialog() == CommonFileDialogResult.Ok)
        {
            txtFolderPath.Text = dlg.FileName;
        }

이렇게 사용하면 됩니다.

 

반응형

댓글