Folder Dialog

This application demonstrates how to use the FolderDialog to select a folder.

Example code:


  MsgStore := EWSSession.OpenDefaultMsgStore;

  FolderDialog.AllowSelectMsgStore := chBxAllowOtherMessageStore.Checked;
  FolderDialog.Title := 'Select a folder...';
  FolderDialog.MsgStore := MsgStore.GetIdentity.EmailAddress;

  // Reset all flags
  FolderDialog.FolderTypes.ShowMessageFolders  := False;
  FolderDialog.FolderTypes.ShowCalendarFolders := False;
  FolderDialog.FolderTypes.ShowContactFolders  := False;
  FolderDialog.FolderTypes.ShowSearchFolders   := False;
  FolderDialog.FolderTypes.ShowTaskFolders     := False;
  FolderDialog.FolderTypes.ShowInbox           := False;
  FolderDialog.FolderTypes.ShowOutbox          := False;
  FolderDialog.FolderTypes.ShowDeletedItems    := False;
  FolderDialog.FolderTypes.ShowSentItems       := False;
  FolderDialog.FolderTypes.ShowJournal         := False;
  FolderDialog.FolderTypes.ShowNotes           := False;

  // Now set only the selected
  for i := 0 to lbFolderTypes.Items.Count - 1 do
    if lbFolderTypes.Selected[i] then
      case i of
        0  : FolderDialog.FolderTypes.ShowMessageFolders  := True;
        1  : FolderDialog.FolderTypes.ShowCalendarFolders := True;
        2  : FolderDialog.FolderTypes.ShowContactFolders  := True;
        3  : FolderDialog.FolderTypes.ShowSearchFolders   := True;
        4  : FolderDialog.FolderTypes.ShowTaskFolders     := True;
        5  : FolderDialog.FolderTypes.ShowInbox           := True;
        6  : FolderDialog.FolderTypes.ShowOutbox          := True;
        7  : FolderDialog.FolderTypes.ShowDeletedItems    := True;
        8  : FolderDialog.FolderTypes.ShowSentItems       := True;
        9  : FolderDialog.FolderTypes.ShowJournal         := True;
        10 : FolderDialog.FolderTypes.ShowNotes           := True;
      end;

  if FolderDialog.Execute then
  begin
    EdtMsgStoreName.Text := FolderDialog.MsgStore;
    EdtFolderID.Text := FolderDialog.FolderID.Id + '; ' + FolderDialog.FolderID.ChangeKey;
    EdtFolderName.Text := FolderDialog.FolderName;
  end;    

Screenshot:


Back to Examples