changing the title of the pickfolder dialog

S

Southern at Heart

Set objFolder = olns.PickFolder
....when using this pickfolder dialog, can I change the title of the dialog
box to read:
"Pick a folder that contains the old contacts"
....or
"Pick a folder that contains the new contacts"

(I need to do both)
thanks.
Southern@Heart
 
K

Ken Slovak - [MVP - Outlook]

That dialog cannot be customized. If you want a different looking dialog you
will have to create it from scratch, using a treeview control to display the
folders and populating the treeview with your own code.
 
M

Mark J. McGinty

Southern at Heart said:
Set objFolder = olns.PickFolder
...when using this pickfolder dialog, can I change the title of the dialog
box to read:
"Pick a folder that contains the old contacts"
...or
"Pick a folder that contains the new contacts"

(I need to do both)
thanks.

As Ken said, the built-in picker dialog is quite limited, whatever it
returns is entirely in the hands of the user. To me, it's all but useless.
It practically forces you to either lead it off with an explanatory message
(ugly), or pop it up and hope like hell the user has a clue {likewise ugly.)

So I wrote my own, that allows calling code to optionally do any or all of
the following:

1.) Set it's title;
2.) Specify a node to be selected when it opens;
3.) Dictate the type of folder the caller expects to be returned;
4.) Show it asynchronously/modelessly (raising an event when it is closed);

It populates each branch of the tree on demand, so its performance is
reasonable with large numbers of items. It supports drag-and-drop movement
of branches, and it's new-item-creation UI is more intuitive than the
built-in.


When I wrote this for an AddIn project a year or two back, I also wrapped it
up in a COM DLL, along with a regular EXE as a test container. I've made it
available, with VB6 project sources, in case you are interested, at:

http://www.deprecatethis.com/upload/PickFolderEx.zip

On the down side, besides the source code, this email is about the extent of
its documentation... :)


Further notes:

2.a.) Pre-selected node may be specified either by EntryID, or OOM constant
for any of the default folders (e.g., olFolderNotes.) If necessary,
ancester nodes are expanded until the specified node is visible.

3.a.) When an expected folder type is specified, that type is automatically
selected in the new folder UI. The user is free to change it, of course,
the user is free to create as many folders of whatever types he likes.

3.b.) If the user selects an existing (or just-created) folder of the wrong
type, and that folder is also empth, the code 'fixes' it up, by deleting the
selected folder and then creating a new one of the right type, in the same
place, with the same name. If the selected folder is *not* empty *and* is
the wrong type, the user is prompted to pick or create another one. (If the
selected folder is of the expected type, it does not need to be empty.)

A good bit of performance can be gained, using Redemption's MAPITables for
fast enumeration when populating -- I did this in the production version of
this code, it made a noticable difference.



-Mark
 
B

Brian Davies

Hi,

I would like to implemet this on ,y PC but I don't have access to the registry - could you possibly send me a copy of the code so I can construct my own version? If not then a work around for registering the pickfolder .dll module.

Regards
Brian
Set objFolder = olns.PickFolder
...when using this pickfolder dialog, can I change the title of the dialog
box to read:
"Pick a folder that contains the old contacts"
...or
"Pick a folder that contains the new contacts"

(I need to do both)
thanks.
Southern@Heart
On Monday, February 11, 2008 11:52 AM Ken Slovak - [MVP - Outlook] wrote:
That dialog cannot be customized. If you want a different looking dialog you
will have to create it from scratch, using a treeview control to display the
folders and populating the treeview with your own code.




message news:[email protected]...
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top