Search Wiki:
Resource Page Description
The ZoneTabs web part provides a group of tabs that control other web parts in a zone, so users can view them in groups rather than scrolling.

As a code sample, ZoneTabs illustrates:
- Creating a ListView server control
- Creating a web part as a composite control
- Using cascading style sheets and images to render tabs
- Creating an editor part to provide custom configuration options
- Using the ASP.NET 2.0 API to manage and control web parts at runtime

NOTE: I wrote this web part in my spare time, and have a day job. The web part is not supported. Although I very much appreciate knowing about any problems you may encounter, and will probably eventually try to fix them, if you need quick turn-around I suggest engaging a SharePoint developer who can maintain the source code on a schedule that you find acceptable. Thanks!

FOR MORE INFORMATION on how ZoneTabs were written, please see my blog at Thanks!
Last edited Apr 30 2008 at 6:28 AM  by BobGerman, version 6
vijay wrote  Feb 18 2008 at 5:35 PM  
im making one web site and i want to create tab control in just like windows tabcontrol

BobGerman wrote  Feb 19 2008 at 3:47 AM  
Hi VJay -

Yes this is absolutely possible, and in fact I tested the TabList control on a vanilla ASP.NET 2.0 page before making it a SharePoint web part. The control should work pretty much as it is (grab the TabList.cs file) except the images and css file would move to another path. Perhaps down the road I'll repackage it for use on a regular ASP.NET site; meanwhile you'd have to modify the code to fix the paths and you should be good to go. It will work like any ListControl... I have to say I was impressed at how much the ListControl base class does for you. It even supports data binding! Yet you'll see it's barely a page of code, there isn't much to it. Most of the work was on the CSS and images.

Hope this helps; thanks!

mykemurfy wrote  Jul 16 2008 at 7:30 PM  
Hi Bob,

I was just wondering whether this web part uses a page reload when tabs are clicked, or handles tab switching with Javascript and CSS. I'll take a closer look tonight to find out, but thought I'd ask here in case you're around today.


BobGerman wrote  Jan 30 2009 at 10:18 PM  
Mike - For now it's a page reload. "Fixing" this is the #1 request so hopefully I'll find time to create an AJAX-enabled version soon. Thanks!

mehulbhuva wrote  Feb 24 2009 at 2:25 PM  
Hi All,

I have AJAX enabled the Zone Tab webpart, i have written a step-by-step how-to article on my blogsite, check it out at:

MacWilson wrote  Aug 5 2009 at 2:32 PM  
I've downloaded the wss files, but I'm not sure where to deploy them from.

MarioCortes wrote  Aug 28 2009 at 1:23 PM  
good component!!, but with my sharepoint Publishin sites don't fine. My solution is change the line "wp.Hidden = true;" to WebPartManager.CloseWebPart(wp);

magentaplacenta wrote  Sep 24 2009 at 1:02 AM  
URGENT:: First of all thanks for making our lives easier :-) i was looking for this particular tab control & fortunately found the code here.
In the code, i guess you have not uploaded all the files. It misses the file where you have declared tool part control --> pixeldropdownlist.
Can you please upload the full source code! THanks in advance!

Tuck68 wrote  Apr 30 2010 at 10:05 PM  
For those interested, I have taken the code and jQuery enabled it instead of using an AJAX postback. Seems to work pretty well and very fast! There is also some code in there to handle problems with a jCarousel control we're using, so you can strip that out if it isn't applicable in your situation.

The code is up for download at^

eric13 wrote  Jul 2 2010 at 6:38 PM  
Here's a modified version of Rob's (Tuck68) code for use on SharePoint 2010.

Caution: I'm not a developer, so the code is less than elegant and not thoroughly tested.

rcr_29 wrote  Jul 2 2013 at 7:55 PM  
The 2010 code works very well, however has anyone added a carousel function to this? It would be nice if we could cycle through the tabs automatically at a 5 or 10 second interval...

Page view tracker