2014-12-22 3 views
-1

사용자에게 구체적인 폴더 안에있는 모든 하위 폴더를 보여줄 창을 만들어야합니다 (WinForms의 FolderBrowserDialog와 같은 방식으로). 그러나 사용자에게 표시 할 논리를 추가하고 싶습니다. 원하지 않는 폴더로.WPF의 사용자 정의 FolderBrowserDialog

이러한 원하지 않는 폴더에는 폴더 아이콘 대신 금지 된 아이콘이 포함되며 이러한 폴더의 하위 폴더에는 표시되지 않습니다.

내 문제는 FolderBrowserDialog + 폴더의 아이콘에 영향을주는 일부 논리를 구현해야한다는 것입니다. 내가 어떻게이 일을 할 수 있겠는가?

+6

TreeView와 1 ~ 2 시간이 소요됩니다. 행운을 빈다. –

+1

* 어떻게 할 수 있습니까? * 예,하지만이 웹 사이트가 필요한 것이 아닙니다. 특정 프로그래밍 문제를 해결하는 데 도움이됩니다. 그렇다면 요구 사항을 구현 한 다음 특정 문제에 직면했을 때 다시 돌아 오지 않는 것이 어떻습니까? 'FolderBrowserDialog'를 복제하는 방법을 연구하는 것은 그리 어렵지 않습니다. 먼저'Directory.GetFiles'를 호출 한 다음 Hans가 제안한'TreeView'로 끝내서 파일/폴더를 표시하십시오. 물론 폴더 아이콘 등을 정의하기 위해서는'DataTemplate'이 필요합니다. – Sheridan

답변

1

글쎄, 여기에는 몇 가지 접근법이 있지만 한스 (Hans)가 제안한 것처럼 TreeView은 아마도 이것에 큰 역할을 할 것입니다. 물론 당신이 물건을 어떻게 놓을 지에 따라 다릅니다. 어쨌든, 당신이 올바른 방향으로 범프를 필요로 나타납니다, 그래서 나는이 두 가지 오픈 소스 프로젝트 제안합니다 :

OpenFileOrFolderDialog :https://github.com/scottwis/OpenFileOrFolderDialog

VistaFolderBrowserDialog을 (를보기 위해 아래로 스크롤) : http://www.ookii.org/software/dialogs/

코드가 어떻게 구성되는지 확인하십시오. 이렇게하면 개발 프로세스 중에 어떤 선택을해야하는지에 대한 기본적인 이해를 얻을 수 있습니다.

또한 에 this very comprehensive article을 구현하면 설계를 결정하는 데 도움이됩니다.

행운을 빈다.