Поделиться через


Практическое руководство. Использование элемента управления DocumentList

Обновлен: Ноябрь 2007

Если приложение основано на работе с файлами, можно использовать элемент управления DocumentList для отображения настроенного списка папок и файлов в папке "Мои документы". В этом имеется сходство с работой приложений Microsoft Pocket Word и Microsoft Pocket Excel. Элемент управления предоставляет пользователю следующие функциональные возможности:

  • Выбор, удаление, копирование, перемещение и переименование файлов и папок.

  • Сортировка по имени файла, дате или размеру.

  • Отправка файлов как вложений электронной почты.

  • Отправка файлов на другое устройство по инфракрасному соединению.

Чтобы реализовать элемент управления DocumentList

  1. Создайте приложение Windows для карманного ПК с помощью DocumentList.

  2. Укажите типы файлов, к которым можно обращаться с помощью свойства Filter.

  3. Укажите изначально отображаемые файлы с помощью свойства FilterIndex.

  4. Укажите папку по умолчанию с помощью свойства SelectedDirectory.

  5. Предоставьте код для обработки события DocumentActivated.

  6. Предоставьте код для обработки события DeletingDocument.

  7. Предоставьте код для обработки события SelectedDirectoryChanged.

Пример

В этом примере задается в форму свойство Parent для элемента управления DocumentList, в результате чего он занимает всю клиентскую область формы. Если нужно занять меньшую область, его можно разместить в объекте Panel и указать длину. Ширина объекта DocumentList должна совпадать с шириной формы.

 ' Set up file extension filters for a
 ' DocumentList and set the initial folder
 ' to the Busines folder under My Documents.
 Sub SetupDocList()

     ' Assumes an instance of DocumentList,
     ' documentList1, has been declared.
     With DocumentList1
         .Parent = Me
         .Filter = " |*.*| |*.txt;*.xml| |*.pwi;*.pdt| " & _
             "|*.pxl;*.psw| |*.jpg;*.gif;*.bmp| |*.wav;*.wmv;*.mpg;"
         .FilterIndex = 0
         .SelectedDirectory = "Business"
     End With

 End Sub

' Handle the DocumentedActivated
' event with code to open the file.
 Private Sub DocList_DocumentActivated(ByVal sender As Object, _
     ByVal docevent As Microsoft.WindowsCE.Forms.DocumentListEventArgs) _
     Handles DocumentList1.DocumentActivated

     StatusBar1.Text = "Activated: " & docevent.Path
 ' Add code to open the selected file.

 End Sub

 ' Handle the DeletingDocument 
 ' event with code to close the file.
 Private Sub DocList_DeletingDocument(ByVal sender As Object, _
     ByVal docevent As Microsoft.WindowsCE.Forms.DocumentListEventArgs) _
     Handles DocumentList1.DeletingDocument

     StatusBar1.Text = "Deleted: " & docevent.Path
     ' Add code to close any instances of the file.

 End Sub

 ' Handle the SelectedDirectoryChanged
 ' event with code that sets the correct
 ' path for opening and closing files.
 Private Sub DocList_SelectedDirectoryChanged( _
     ByVal sender As Object,  ByVal e As System.EventArgs) _
     Handles DocumentList1.SelectedDirectoryChanged

     StatusBar1.Text = "Folder: " & DocumentList1.SelectedDirectory
     ' Add code to access the selected folder to open and close files.    

 End Sub
// Set up file extension filters for a
// DocumentList and set the initial folder
// to the Busines folder under My Documents.
 private void SetupDocList()
 {

     // Assumes an instance of DocumentList,
     // documentList1, has been declared.
     documentList1.Parent = this;

     // Create event handlers for DocumentList events.
     documentList1.DocumentActivated +=
         new DocumentListEventHandler(this.OnDocActivated);

     documentList1.SelectedDirectoryChanged +=
         new EventHandler(this.OnFolderSel);

     documentList1.DeletingDocument +=
         new DocumentListEventHandler(this.OnDelDoc);

     documentList1.Filter = " |*.*| |*.txt;*.xml| |*.pwi;*.pdt| " +
         "|*.pxl;*.psw| |*.jpg;*.gif;*.bmp| |*.wav;*.wmv;*.mpg;";
     documentList1.FilterIndex = 0;
     documentList1.SelectedDirectory = "Business";
 }

 private void OnDelDoc(object obj, DocumentListEventArgs DocArgs)
 {
     statusBar1.Text += "Deleted: " + DocArgs.Path;

     // Add code to close any instances of the file.
 }

 private void OnDocActivated(object obj, DocumentListEventArgs DocArgs)
 {
     statusBar1.Text = "Activated: " + DocArgs.Path;

     // Add code to open the selected file.
 }
 private void OnFolderSel(object obj, EventArgs eventg)
 {
     statusBar1.Text = "Folder: " + documentList1.SelectedDirectory;

     // Add code to access the selected folder to open and close files.
 }

Компиляция кода

Для этого примера требуются ссылки на следующие пространства имен:

См. также

Ссылки

DocumentList

Другие ресурсы

Разработка карманного ПК и .NET Compact Framework