WSS3

WSS3

Disentangling Render Patterns

I few months ago I posted on RenderPatterns and how they are used when creating custom fields for SharePoint. In that post the point I was trying to make was that when viewing data in a list nothing else matters except the render pattern. None of your highfalutin C# SPField derived classes can save you from the madness that is the render pattern. Never mind what MSDN says about using an .ascx control - there is no other way. So with that said, given that we’re stuck with the render pattern, it would be good to know a bit...

Extending the DataForm Web Part to allow custom field controls

Ever tried to add a custom field control to a Custom List Form in SharePoint Designer? You’d think it’d be simple, just drag the field from the toolbox and stick it on the form. Nah! We haven’t heard much from Ernő Rubik in recent years. I’m convinced he’s at Microsoft working on the SharePoint team (and doing a bit of work in the WF team when he’s got a chance) You’ll come across a few problems when trying to add your custom field control (or any other type of custom control) to a custom list form. As you may...

In Depth: SharePoint Security Configuration – Part 1

The source code for this article is available on CodePlex Introduction If you’ve been developing applications for SharePoint for any length of time you’ll undoubtedly have come into contact with the security model. Based on the asp.net provider model, SharePoint itself does not authenticate users, it merely provides authorisation. That is to say that SharePoint does not verify that users are who they claim to be, it simply makes use of the users identity to determine what resources should be available to the user. Of course this does not mean that user identities are not verified, just that...

DataBinding to SPListItemCollection

This is one of those things that I always forget about and end up having to debug. (Also for those planning to do MCTS, I guarantee that there will be a question about this one ;) ) While it is technically possible to databind to a SPListItemCollection, when you try to refer to any of the SPListItem fields by name you’ll end up with an error similar to this: [ArgumentException: Value does not fall within the expected range.] Microsoft.SharePoint.SPFieldMap.GetColumnNumber(String strFieldName) +161 Microsoft.SharePoint.SPListItemCollection.GetRawValue(String fieldname, Int32 iIndex) +56...

NavBars – If only it was that simple!

Packaging and deployment is often a pain when it comes to SharePoint development. Don’t get me wrong, the infrastructure provided by Microsoft is very powerful and flexible enough to accommodate practically anything but sometimes it doesn’t quite work the way you think it should. One of the key elements of any web site is navigation. More often than not there’s at least one menu bar containing links to other pages within the site. This is one of the areas where SharePoint can be very helpful. Whenever you create a page or any other content, more often than not you’re...

Custom FieldTypes – Part 3

Download the source code for this project here Over the last 2 posts in this series we’ve looked at creating a new field type to handle Xml data. We’ve created a basic implementation and added a custom user interface to make editing the data a bit more friendly. In this article we’ll look at using XSD and XSLT data to provide a higher level of data validation and to give a greater degree of control over how our data is displayed within SharePoint. Previously most of the code that we’ve added has been to the BaseXmlField and SPFieldXmlBase...

Custom FieldTypes – Part 2

Download the source code for this project here In this article we described an Xml field type that could be used for storing Xml and Xml-derived data in a SharePoint list. We got as far as creating a skeleton object that provides the basic functionality of a custom field. In this post we’ll add a custom user interface to make editing Xml data a bit more friendly. In order to generate a responsive UI I’ve made use of two client side technologies: JQuery - specifically the Dialog functionality of JQuery UI CodeMirror – specifically the...