The Imtech Style Library Extension has been inspired by the Imtech Master Pages and Page Layouts Extension. The edit functionality that it provides has been something that I have used a lot while working with developing SharePoint solutions on SharePoint 2007. For the last few years I’ve been working almost exclusively on Web Content Management (WCM) solutions. One thing that I’ve been editing perhaps even more than Page Layouts and Master Pages were the XSLT files used by the Content Query Web Part (CQWP). Looking at the enhancements of the CQWP in SharePoint 2010 I will be very likely using it heavily as well. To make working with these XSLT files easier, I decided to create an extension for the Visual Studio SharePoint development tools that would allow to view and edit the contents of the XSL files used by the CQWP.
In the last few posts I wrote about the Visual Studio SharePoint development tools and showed you a few cool things that you can achieve using the extensibility API provided with the tools. The extensions I previously showed you, allowed you to explore SharePoint objects or generate items out of it. But did you know that using the new Visual Studio SharePoint development tools you can also create extensions that will allow you to edit SharePoint objects?
It’s probably one of the most obvious types of extensibility – to generate files out of content existing in a SharePoint Site. There are many examples already there available either in SharePoint Designer or the Visual Studio SharePoint development tools. Still there are many things yet to be created. Knowing how to programmatically create a new file in Visual Studio, is the basic thing that you need to know how to do, before you get started with your own extensions.
Generic explorer nodes, like the Features or the Content Types node, weren’t really made to be extended. After all, all they do is to wrap the “real” nodes, so that using the SharePoint Explorer is easier and better performing. Still, there might be situations, when you could want to add some extra functionality to a generic folder node like for example displaying Content Types in groups or grouping Features in Enabled and Disabled.
While extending the Visual Studio SharePoint development tools you might be working on an extension that would be using the fully qualified (4-part) name of an assembly. It could be for example a custom Deployment Step or a MSBuild Task.