September 2005 - Posts

Actually it was released yesterday, but this week I'm in Slovenia so I discovered it a few moments ago (thanks Oisin for bringing this to my attention!): SP2 for Windows SharePoint Services is available for download. Over here you can find the KB article that describes the changes.

Since Patrick is totally into business value, ROI and TOC these days, let me tell you some more technical details about the “Son of SmartPart” (aka SmartPart vNext). First of all, what is the problem that the SmartPart fixes? You can’t use ASP.NET 2.0 web parts or user controls in the current version of Windows SharePoint Services. Service Pack 2 of WSS will allow you to host a SharePoint site on a virtual directory running on ASP.NET 2.0, but this doesn’t solve the issue. That’s why we created the next version of the SmartPart (aka Son of SmartPart), which will allow you to show ASP.NET 2.0 user controls and web parts inside WSS. This version of the SmartPart will come in two flavours: one for hosting user controls and one for hosting web parts (2.0 web parts that is).

What will be supported?
Basically everything supported in SmartPart 1.1 will be available, so for both ASP.NET 2.0 user controls and web parts:

  • Exposing custom properties
  • Connectable web parts / user controls
  • Creating custom tool parts
  • Hidden custom properties
  • Access to the underlying web part / user control instance
  • Access to the SharePoint context

When will we be able to play with it?
We will be releasing a “Technology Preview” real soon. Be aware that things may and will change in the final release. All the features for user controls are implemented (but not fully tested). If you want to host ASP.NET 2.0 web parts, that’s possible but you won’t be able to use the advanced features like connectable web parts and custom properties yet.

When will the final/RTM version be released?
The final version “Son of SmartPart” will be released in the same time frame as Visual Studio 2005. Probably we will be releasing more technology previews to show you the progress we have been making.

That’s it for now, stay tuned for more news. I’m heading to the PDC again, today will be an exciting day for all the SharePoint fans. See you in one of the SharePoint sessions!

Additional resources:

The word is out ...

Check Patrick's blog post for more details.

Did you ever wonder why PDC is held in Los Angeles this year? I didn't know either before this morning, until I encountered this road sign:

This picture is a great background! :-) Since PDC '05 will be all about Windows Vista... I'm wondering if there will be a party in this street later this week. ;-) Btw, I've uploaded some more pics on my MSN Space.

I just arrived at Los Angeles for the PDC conference! Together with a bunch of EMEA people we are staying in the Hollywood Renaissance Hotel (check David’s post for a list of Belgians). There was a welcome party yesterday evening but since everybody was awake for more than 24 hours, a lot of people (including me) left quite early. For some early impressions you can check my MSN Space for some pictures. Today we are going to do a city tour in L.A., trying to visit all the tourist hot spots. The countdown for the key note has started ... :-)

Here's a little hint for all the SmartPart fans out there: stay tuned for some exciting announcements... I'm not going to spoil the surprise but here's my advice for web part developers: invest some time in ASP.NET 2.0; you'll be able to use it sooner than you may think. :-)

I'm getting excited, tomorrow (very very early, even for me) I will leave for PDC, together with a bunch of other geeks. It will be my first major Microsoft event outside Belgium; I'm ready for the information overload. Besides the technical content I really hope that there will be some other SharePoint/BizTalk/IW fans which I've "met" online.

Anyway, thanks to Patrick's checklist I'm ready to go! See you in L.A.!

I knew that I had seen this sometime somewhere when I was looking for it. Even my SharePoint buddy didn't know how to pull off this little trick. But thanks to Chan's post, I now have a link to the solution! :-) You can get the HTML to display contents of a Document Library or a List (just a list of items, no toolbars) by using the RPC protocol, the nice thing is that you can also use RPC by providing parameters in the URL. For example this URL

http://[Server]/[Site Path]/_vti_bin/owssvr.dll?dialogview=FileOpen&location=Shared%20Documents

would display the contents of the Document Library. Cool trick and very nice in combination with a Page Viewer Web Part for example. More info and screenshots on Chan's blog. Thanks Chan!

I know I promised the new version of the SmartPart for this weekend, but minutes before I wanted to upload the bits to GotDotNet Workspace I found a small issue. It took me some time to find the bug, but now I’m proud to present to you the SmartPart version 1.1! Before you all start downloading the latest version, here’s an overview of the new features:

Support for Custom ToolParts
If you develop web parts the hard traditional way, you probably know that you can create custom tool parts for your web parts. These tool parts will show up on the right hand side when you click “Modify Shared Web Part” in the same area where you can modify default web part properties like Title, Width, etc. Now you can create User Controls which can provide Custom Toolparts, just like the “real” web parts. If you download the latest release from the GotDotNet site, you will find an example of this technique. It comes down to this: if you implement the SmartPart.IAdvancedUserControl interface, you will have a function that can return an array of toolparts which will be shown by SharePoint.

Access to the underlying web part instance
Now it’s possible to access the web part that hosts your user control. So it will be possible to get or set properties of that web part from your user control. In the latest release you will find an example that can change the web part title from code.

“Hidden” custom properties
In the previous version of the SmartPart, the only way to persist a value was to implement a public property and decorate it with the Browsable attribute. The side effect was that this property would show up in the web part’s tool part so user could access it. In many cases this is the desired behavior, and this is also applicable to the new version of the SmartPart. But suppose that you’d like to persist a value that shouldn’t be available for the user. Now you can easily get or set values for a property that will not be exposed to the user by using the GetCustomProperty and SetCustomProperty functions of the smart part web part instance.

Various minor improvements
Some minor changes are made to the code to improve performance and behavior of the SmartPart.

Backward compatibility
All the interfaces used in the previous version of the SmartPart are left untouched, so theoretically you should be able to upgrade your user controls without having to change anything to your code. If you want to make use of the new version, you have to use the new SmartPart.IAdvancedWebPart interface.

I’m planning to record some short webcasts to illustrate how you can use the SmartPart. The first episode is about the installation, and you can find it over here. Maybe there are some people that want to share their experiences with the SmartPart or talk about the projects in which they have used it. It would be totally cool if we could to some sort of podcast about the SmartPart success stories, if you’re interested, drop me a line and we’ll arrange a Skype session.

Pfew, it has been a while since my last noticeable blog post. I'm sorry for my avid readers who have visited my blog in vain in the last couple of months. Just to kill some rumours: I don’t have a blog restraint, I haven’t transformed into a Websphere junkie and I’m still alive. :-) Holidays are over and I’m ready for the new Blogging Season!

So what’s coming in the near future? The PDC is real close now, in a little more than one week I’ll be in L.A. to attend my first big Microsoft convention. Stay tuned for some blog reports about SharePoint, Office and other Information Worker related news from the PDC.

What’s better to start the new season by making a nice announcement? Tonight I’ve finished a new version of the SmartPart, it has the following new/improved features:

  • support for custom ToolParts
  • easy access to the underlying web part
  • support for custom properties without exposing them in the property toolpart
  • various minor improvements

Although the code is built and packaged, I haven’t released the new version to the GotDotNet Workspace yet. I want to create some accompanying documentation first. I’m not going to write a lot of documents, but I’m thinking of recording some webcast style videos (easier for me and easier for you). I expect this to be finished this weekend. If you can’t wait and you want to give it a try without documentation, contact me for the bits.

More Posts