Click here to Skip to main content
Click here to Skip to main content

Microsoft Content Management Server Custom Properties Placeholder

, 15 Feb 2005 CPOL
Rate this:
Please Sign up or sign in to vote.
A placeholder control that allows authors to edit Posting Custom Properties directly in a page.

Sample Image - cmscustompropertiesph.gif

Summary

For use in Microsoft Content Management Server, this is a placeholder control that allows authors to edit Posting Custom Properties directly in the page. In authoring mode, Custom Properties are rendered in textboxes or listboxes for users to enter values. In unpublished non-preview mode, Custom Properties are rendered in text values. In published or preview mode, nothing will be rendered.

Both C# and VB.NET versions are included.

Description

Although this is built as a placeholder control, nothing is actually saved to the placeholder. I started out developing this as a plain web control but could not find a suitable event to save the Custom Properties. You see, there is no CmsPosting_Saved event. The best compromise is CmsPosting_Changed event and check for PlaceholderPropertyChange action. But if there are five placeholders in a page, my routine will be run five times! More problematic is that this action does not take into account the situation when a page does not have any placeholders, like summary page for a channel cover. That's why I built it as a placeholder control.

This control will not render Custom Property of the selection type if it contains one allowed value only. This type of Custom Property setting is usually used for template logic and does not serve any authoring purpose since you cannot change the value.

The styling of the Custom Properties table rendered is not meant for customization. To set it apart from regular page content, the table uses the built-in CMS look and feel. The table title is customizable however, and is exposed through a public property TableTitle. The default value is "Custom Properties". Since all the table fields come with CSS classes, you can still use an external stylesheet to customize the look and feel of the table.

Installation Procedures

Please reference section "Custom Placeholder Controls" in CMS documentation. It is located in Site Development: Developing Your MCMS Site: Extending the Functionality of MCMS: Creating Custom Placeholders: Custom Placeholder Controls.

History

  • V1.0 - 2004.01.30 - Base.
  • V1.1 - 2004.05.05
    • Added C# version.
    • Background color of alternate table rows now renders properly.
  • V1.2 - 2005.02.13 - Fixed error in authoring preview when custom properties are changed. (Please note that class namespace has been changed.)

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Stephen Huen
Software Developer (Senior)
Canada Canada
A Microsoft Certified Professional Developer and Technology Specialist.
 
Experience and expertise in SharePoint 2013 / 2010 / 2007.
 
Role ranges from a developer in a multi-person team to a solution consultant with expert-level skills, leading a project to completion status.
 
Proven experience working effectively in a team environment and a self-managed environment.
Follow on   LinkedIn

Comments and Discussions

 
GeneralPlaceholderToBind Pinmemberlwatzon22-Feb-07 3:04 
GeneralRe: PlaceholderToBind PinmemberStephen Huen22-Feb-07 8:19 
GeneralSave custom properties when saving posting PinmemberNikolaj200816-Sep-04 1:10 
QuestionAdd Custom properties im web mode? Pinmembereriknils18-Aug-04 20:34 
AnswerRe: Add Custom properties im web mode? PinmemberStephen Huen19-Aug-04 5:11 
GeneralRe: Add Custom properties im web mode? Pinmembereriknils19-Aug-04 19:36 
GeneralPosting events PinsussAnonymous4-Aug-04 5:34 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web04 | 2.8.141015.1 | Last Updated 15 Feb 2005
Article Copyright 2004 by Stephen Huen
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid