6 Part Series: Customizing the User Experience of SharePoint

27 07 2009

There is a great 6 part series on customizing the user experience by Bjørn Furuknap on SharePoint magazine.

The series covers the following topics;

Part 1: Overview of the default SharePoint interface from a technical point of view

In the first article we will look at how the default SharePoint interface is built. We will look at a site, going from top-down, explore some of the the default lists, the fields used to create the basic field types, which content types are available, and how list forms are rendered.

Part 2: Modifying the default experience

This article will show you which options are available for you to modify and improve the default setup. Learn how to override the default rendering of fields or forms without voiding your supported state.

Part 3: Lists and custom list forms

The third article will cover the basics of customizing lists using different views, custom list forms, and fields.

Part 4: Content types user interface

The next article will explore how you can utilize content types to display different input forms and display forms.

Part 5: Custom fields deep dive

Ever wanted to create a new field type? SharePoint enables you to do this and it is a very powerful tool for customizing the user experience.

Part 6: Fast track to feature generation

Writing custom lists with content types by hand can take a massive amount of time. In the final installment I will share with you some tools and techniques that makes list, field, and content type generation very fast.

Bjørn also has an excellant article introducing the reader to SharePoint DelegateControl’s.





High CPU Utilization by W3WP.EXE when Deploying Feature based SharePoint Content-Types

24 07 2009

I’m developing some Site Columns, Content Types and List Templates and packaging them into a feature for deployment. All is well, the feature deploys and activates just fine, but when I click on the Content Types link under Galleries in Site Settings (http://…../_layouts/mngctype.aspx) the browser just chokes and sits there all day. Everything else slows down too so I look at Task Manager and notice that W3WP.EXE is running at around 95% CPU utilization – not good.

Eventually I manage to get the feature deactivated and uninstalled and start looking at my Content Type CAML, nothing looks wrong so I take a look at the CAML for the OOTB Custom List template ( found in …\12\TEMPLATE\FEATURES\CustomList\CustList\schema.xml ), some time later I notice that the <XmlDocument> tag is missing the NamespaceURI attribute that is present in the Custom List’s version. 

My version:

...
<XmlDocuments>
    <XmlDocument>
        <FormTemplates xmlns="http://schemas.microsoft.com/sharepoint/v3/contenttype/forms">
...

Custom Lists’ version:

...
<XmlDocuments>
    <XmlDocument NamespaceURI="http://schemas.microsoft.com/sharepoint/v3/contenttype/forms">
        <FormTemplates xmlns="http://schemas.microsoft.com/sharepoint/v3/contenttype/forms">
...

I make my adjustments, redeploy, activate and so on, and the problem is solved.

Originally I’d exported a template content-type from SharePoint using Andrew Connell’s custom STSADM commands, so I guess his -gencontenttypesxml command misses that bit, still great tools though.