Displaying SharePoint Fields in different order than edit fields
Some of our customers like to have the information displayed in a different way than the order of the fields within the Content Types: there is frankly a difference of the information meaning for their customers (visitors) and the Information Workers within the organization. As SharePoint 2007 ships with the in-place edit possibility it’s quite obvious that this is the recommended way to use for managing the data – especially when it comes to Information Workers who not necessarily have to have technical background. Implementing the required fields in the Page Layout seems to be the solution for this problem: both IW and visitors have the idea of the page will look after publishing.
But as I mentioned there seems to be a difference in information’s interpretation for both the visitors and IW: how would you incorporate the required information ordered differently depending on the role of the user? The easiest solution would be to send the IW back to the blue edit screens of SharePoint 2007 and make that their working interface.
I’ve also found out that you will face the same challenge while dealing with a creative chrome which doesn’t really allows or doesn’t have space for in-place editing.
While dealing with this problem I came up with a solution: how about setting the
ControlMode="Display" attribute for all the display (visitors) fields and incorporating the edit (IW) fields in the edit panel so they are visible only in the edit mode? A typical display field would look then like this:
<SharePointWebControls:TextField FieldName="SomeField" ControlMode="Display" runat="server" />
It worked fine until it came to working with required fields: the
ControlMode attribute changes only the visual piece of a field: if it’s required it will still need some input in order to be valid. After a little search I came up with another solution.
In one of the Page Layouts shipped with SharePoint 2007 I’ve found the
SharePointWebControls:FieldValue webcontrol. After a little bit of testing it seems to suit the customer needs and solve my problem.
Each time you will want to make use of alternate fields order you can use the
SharePointWebControls:FieldValue webcontrol instead of making a custom one.