More Outlook Resource Sites

Microsoft Developer Network (MSDN)

FAQs and other general resources

Customizing Outlook Contact Forms

Because the Contact form is perhaps the one most frequently customized, we thought it would be helpful to collect some of the oddities here for ready reference. If you are aware of these from the beginning, you'll spend less time beating your head against the wall.

Quirks

Customizing the first page of the contact form affects its functionality:

  • Outlook 97 cannot open forms where the first page has been customized in a later version of Outlook.

  • If you customize the first page of the Contact form, the feature that automatically formats telephone numbers no longer works. See OL2000 How to Use the Intellisense Feature in Outlook to Format Custom Phone Number Fields for a useful workaround. This problem is fixed in Outlook 2002, at least for U.S. numbers. We haven't tested with other countries' formats.

  • Another thing you lose if you customize the first page of a contact form is Outlook's ability to display flag and reminder information on that page. You may, therefore, want to add a control to display the flag information.

  • Yes another feature lost if you custmize the first page of a contact form is the Display As control's ability to automatically show the display name for the currently displayed email address. Instead, it always shows the E-mail Display Name. The user can, however, still modify E-mail 2 Display Name and E-mail 3 Display Name on the All Fields page.

  • Outlook 2003 introduces a new layout to the first page of the contact form to display a picture, as well as related new ContactItem properties and methods -- AddPicture, RemovePicture, and HasPicture. Programmers, however, will see the older layout when they put an Outlook 2003 contact form into design mode. If you modify the first page, the form will display the layout that you set for that page. If you do not modify the first page, Outlook 2003 will show the new contact layout for the first page, plus any custom pages you create.

  • In Outlook 2003, Outlook Spy reveals that the picture is stored as an attachment to the contact named ContactPicture.jpg, regardless of the original format. The new layout and the included picture control, however, are not available to programmers. One workaround is to use an image control, as described at Displaying a Picture on an Outlook Form.

  • In Outlook 2002 and 2003, if you customize the first page of the contact form, items that use that form will not be visible in the preview/reading pane. Office XP Service Pack 3 resolves this issue for Outlook 2002; see OL2002 Certain Custom Forms Will Not Show Correctly in the Preview Pane.

The names you see in the Field Chooser are not necessarily the same as the actual property names that you would use in code. For example, what you see as the Company field in the Field Chooser is actually the CompanyName property. There's a topic in Help on this -- Outlook Fields and Equivalent Properties. (Too bad that Help in Office does not include the ability to bookmark favorite topics like this.) Also see Outlook Contact Item Fields and Properties, a white paper by Helen Feddema.

In Outlook 2000 and later versions, when you drag a contact using a customized form to the Inbox, it does not create a message addressed to the contact. Instead, you get a message with the contact details in the body. You can see this even more clearly if you drag the item with the right mouse button. The resulting pop-up menu is missing the Address Message to Contact command that's the default when you drag a contact using the default Contact form. One workaround is to instruct your users in how to right-click a contact, then choose New Message to Contact from the context menu. See OL2000 Message Is Not Addressed When You Drag a Contact to the Inbox.

If you add a text field to the form and bind it to a multi-line list box, then include the field in an Address Card type view, any carriage return/line feeds used to enter data in the multi-line text box will appear as small boxes in the view. Built-in multi-line fields, such as Mailing Address, appear as you would expect, showing each line of the address on a separate line in the view. There appears to be no way to provide that behavior to custom fields.  

If on the General page, you replace the drop-down list for the File As field with a text box and set a formula for that text box (e.g. [Company] & " (" & [Last Name] & ", " & [First Name] & ")" ), the File As field is set correctly using the formula but the text in the text box does not update. If you place the text box on the P.2 page it works as expected, updating the control text whenever the user makes a change to one of the fields in the formula.

Limitations

Things you cannot do with the Contact form:

  • Add address fields to the Business, Home, Other list or change the labels on the drop-down list for the built-in address fields
  • Add telephone fields to the drop-down list of built-in phone fields or change the labels for the built-in fields
  • Add more e-mail address fields
  • Customize the Details page
  • Use the "Send plain text only" checkbox in Corporate/Workgroup mode or get the value of that property through the Outlook object model in IMO mode. This limitation also applies to later versions, which like CW mode, store a message format preference for each email address. (There have been discussions in the newsgroups of using CDO to get or modify this recipient property.)

Custom contact forms ignore Outlook's duplicate detection mechanism. See OL2000: Duplicate Contact Detection Does Not Work with Custom Forms.

In Outlook 2003 RTM, opening a contact found with the Find function always displays that contact in the default form. Opening a contact from Advanced Find uses the custom form, if one is designated in the item's MessageClass. This issue is fixed in Office 2003 Service Pack 1.

Also see: 

Tips

You don't have to use contact forms just for contacts. For example, because the contact form has a clickable Web Page field, you could use it as a library of links to images; see Exchange Tip for imaging.

Another contact-only feature is the ability of other items to link to a contact. Consider using a contacts folder with a customized form to hold master records for all your projects. All other items can then link to those projects through the Contacts field on the form (the Links collection in the object model.

If you want to change the FileAs property for imported contacts, you need to be aware that FileAs is a little quirky. What you see in the contact item as Full Name (Company) is actually stored as "Full Name" & vbCrLf & "Company" -- with no parentheses in sight. See Set file as property on designed form for a discussion and example of this issue.

Also see:

Samples

Fax to Contact Form

Custom Outlook form that adds a New Fax to Contact action to the menu and handles 10-digit dialing.

Holiday Card List

Unsupported Microsoft sample form application.

To show the Home address on a Microsoft Outlook contact form by default

Sample form created in Outlook 2000

Job Candidates

Unsupported Microsoft sample form application.

Outlook Company Updater

A Microsoft Outlook form to update information for all Contact records related to a particular company.

Outlook Contact Item Viewer

Visual Basic sample application that demonstrates how to obtain an Outlook contact from the user's selection of a name from the Address Book.

Required Categories Contact Form

Custom Outlook form that forces the user to pick from a specific list of categories, even if they are not in the Master Category List.

Teacher Contacts

Unsupported Microsoft sample form application.

More Information