2010-03-25 2 views
4

나는 사용자가 필요로하는 파일을 복사 할 수있는 곳에서 내 Windows 양식으로 폴더 내용을 표시하고 싶습니다.이 용도로 사용해야하는 컨테이너 유형은 무엇입니까?.NET을 사용하여 Windows 폴더 내용을 Windows 폴더 내용으로 표시하는 방법은 무엇입니까?

+0

붙여 넣기 된 파일은 무엇입니까? 파일 이름을 일부 컨테이너 (예 : TextBox)에 복사하거나 실제로 파일을 열고 내용 (예 : .jpg 파일 표시)을 사용하여 작업하고 있습니까? 조금 더 자세하게 제발. – BillW

+0

나는 특정 폴더가있어서 그 내용을 사용자에게 보여주고 사용자가 항목을 복사하거나 붙여 넣을 수는 있지만 보안상의 이유 때문에 폴더의 위치 나 이름을 표시하지 않으려 고합니다. 받아들이거나 물건을주고 아무 것도 할 수 없다면, – Badr

+0

한 가지 더 이상의 사용자는 지정된 폴더의 루트 디렉토리에 액세스 할 수도 없습니다. 나는 트리 뷰가 필요 없다는 것을 의미한다. – Badr

답변

2

기본적으로 두 가지 옵션이 있습니다. 이미 빌드 컨트롤을 가져 와서 응용 프로그램에서 사용할 수는 있지만 그다지 많지는 않지만 매우 좋지는 않으며 하나만 지불해야합니다.

또는 TreeView/ListView를 사용하고 필요한 최상의 스위트 룸을 만들 수 있습니다. Here is an example 설명 및 소스 코드.

0

전 트리 뷰에서 모든 파일을보기 위해 Ultra win tree (infrajestics control)를 사용했습니다.

1

또 다른 방법은 기본적으로 응용 프로그램에 직접 탐색기를 포함시킬 수있는 실제 탐색기 셸 컨트롤에 대한 관리되는 래퍼가 포함 된 Windows API Code Pack을 얻을 수 있다는 것입니다.

0

가정하면

  1. 설계 요구는 최종 사용자가 복사 할 파일 또는 페이스트의 실제 위치를 나타내는 금지. 표시된 모든 파일 이름이 경로 위치에서 제거되었다고 가정하십시오.

  2. 파일의 목록은 "플랫"(더 트 리뷰 형식 표시가 필요하지 않습니다)

  3. 이동해야하거나 복사, 다른 원래의 "전체"목록에서 하나 개 이상의 파일이있다 "부분입니다 목록 "

패널에 두 개의 ListView가있는 인터페이스를 만들 수 있습니다. 파일 이름을 표시 할 수있는 ListView 당 하나의 열 : 둘 다에서 다중 선택을 허용합니다.

표준 기술을 사용하여 드래그 앤 드롭을 구현하거나, 화살표가있는 단추 집합을 만들어 ListView간에 항목을 앞뒤로 이동시킬 수 있습니다. 각 ListView에 대해 별도의 삭제 단추가있을 수 있으며 최종 사용자가 응용 프로그램에 따라 삭제를 확인해야합니다.

"여러 복사본"(동일한 내용이있는 둘 이상의 목록 항목)이 허용되는 경우, 특히 드래그/드롭 한 경우이를 제어하는 ​​데 키보드 옵션을 사용할 수 있습니다.

응용 프로그램에 따라 최종 사용자가 두 개의 ListView의 현재 상태에 대한 "스냅 샷"을 만들어 "복원"할 수 있다고 생각합니다. 간단한 "취소"버튼으로 관리 할 수 ​​있지만 모든 것을 다시 설정하려는 경우입니다.

관련 문제