Mystery of the _Hidden Event Content Type

Earlier this week I was putting together a demo for an upcoming user group meeting about lists and content types where I was creating a new content type that would support some contact information and some calendaring information. The content type is used in two different lists. One is a contact list that can be connected to Outlook as a contact view and the other is a calendar that can be connected to Outlook as a calendar.

I started out by creating a new content type based on Contact, added a couple of custom site columns, and then attempted to add Start Date, End Date, and Location from the Event contact type. But, to my surprise, they were not listed!

After a little investigation I realized that the Event content type is in the _Hidden group! Now, I don’t know why this is, but I suspect the reason rhymes with ‘hug’. First, because it doesn’t make any sense and I couldn’t find any explanation of why this might be on the web. The second is because the WSS SDK says that it is part of the List Content Types group, not the _Hidden group. Whatever the reason, I needed those fields!

Fortunately, you can put the Event content type into the List Content Types Group pretty easily via the UI without resorting to writing any code or altering the feature or site definitions.

  1. Create a new Calendar list by choosing Create from the Site Actions menu.

    and choosing Calendar

  2. Fill out the form and click OK
  3. Open the list settings by choosing List Settings from the Settings menu.
  4. By default, Lists do not allow management of the content types they are based on. Which is a double edged sword because while it makes things easier for the user it also increases the chances that someone will edit a field in a list, like a calculation, that later gets stomped by an update to the content type. But I digress… To access the Event content type we need to configure the list to allow management of content types. Click advanced settings under General Settings.

  5. On the Advanced Settings page select Yes for ‘Allow management of content types?’ and click OK.
  6. A new section is now displayed on the list settings page for the content types used by the list. To access the Event type click the Event link.

  7. On the subsequent page click the Event link beside the Parent: label.

  8. On the Content Type Information Screen follow the Name, description, and group link
  9. Change the Group to List Content Types and click OK

That’s it. Now you can get at the event columns when creating your own content types and choose Event as the parent if you want to create new Site Content Types based on Event.

If you want to rehide the type, simply edit it from the Site Content Type gallery on Site Settings and assign it to the _Hidden group.

Author: Doug Ware

Atlanta based entrepreneur, author of many SharePoint books and videos, leader of Atlanta .NET user group, founder of InstantQuick, and SharePoint MVP.

16 Comments

  • Shen DeShayne

    November 23, 2007, 2:57 pm

    Found Will Allan’s blog that had a harder way to do it:
    http://blogs.vertigo.com/personal/willa/Blog/Lists/Posts/Post.aspx?ID=8

    A commenter on that blog had the same tutorial as you!

    Thanks!!

  • Narayana

    January 10, 2008, 5:01 am

    Thanks :) Was wondering why events is not available…

  • Joe

    July 9, 2008, 9:59 am

    Thanks for the information.
    I was close to trying to build a a custom CT from the STP xml.

  • Jeremy Allman

    July 14, 2008, 6:50 pm

    So how do we rehide this to prevent someone from inadvertantly changing it? The _Hidden does not show up as a selectable existing group. I have made my custom content type that inherits the Event type, and now I want to rehide it.

  • Doug

    July 15, 2008, 9:49 am

    Hi Jeremey,
    Just select “New Group” and enter “_Hidden”.

  • Anon

    April 22, 2009, 1:44 pm

    I do not have the option to change the group of the Event type under the Settings List. I even tried through the Site Collection Administration area (thinking that the admin is the only one who has the ability to do this). My Settings link only shows “Name and description.” Does anybody know why?

  • Josh

    May 19, 2009, 4:50 pm

    I believe enable to change the Event type you must have MOSS rather than WSS.

  • Doug Ware

    May 20, 2009, 9:25 am

    No, you don’t.
    The “Name and description” link is on the List Content Type page. You need to click the Event link next to the Parent: label to get to the site content type page.
    You can also just enter the url http:///_layouts/ManageContentType.aspx?ctype=0×0102!

  • Peter Sterpe

    June 24, 2009, 10:33 am

    Works perfectly – thanks!

  • Christophe

    August 30, 2009, 1:18 am

    Very helpful, thanks.

  • RP

    October 13, 2009, 12:52 pm

    Exactly what I needed. Best wishes.

  • Beth

    October 31, 2009, 8:40 pm

    I’m a little worried about trying this. Did anyone experience any issues?

  • John

    November 6, 2009, 10:21 am

    Great Job, Very helpful

  • Catalin

    September 1, 2010, 11:46 am

    Hi,

    I changed the group from hidden and I tried to add a new content type to a calendar list and still didn’t worked for me as the Event content type wasn’t in the list of available content types.

  • Shaun

    November 8, 2010, 9:56 pm

    I found that I had to first:
    -Create a calendar on the site that I wish to use the event content type
    -Complete the steps described on this page

    The event type was then visible on my sub-site

  • Larry

    December 7, 2012, 4:34 pm

    >I found that I had to first:
    >-Create a calendar on the site that I wish to use the event content type
    >-Complete the steps described on this page

    >The event type was then visible on my sub-site

    I did this and still don’t have it in my List Content Types group when I go to add a content type. What now?

Comments are closed