Friday, April 3, 2009

SharePoint Designer 2007 Free!

For a while now there has been talk that starting April 1st, SPD would be free to download. Everyone took it as an April Fool’s Day joke, but it is true! Starting this April, SPD 2007 is free to download on the Microsoft site. 
 
Is it because so many people are now using it, or maybe because a new an improved version is on its way? :)

 
Posted by Madalina at 07:37:00 | Permalink | No Comments »

Monday, January 19, 2009

AlternateCssUrl - what is it useful for?

When you design a SharePoint MasterPage or Theme, you usually include the CSS style sheet references in the .master file or in the Theme folder. And those style sheets contain all the styling you need.

If you work with a masterpage, you will probably set in code values for DefaultMasterPageURL and CustomMasterPageURL.

There is one more property of a SharePoint site called AlternateCssUrl. You would use this property if you don’t want to create a MasterPage or a Theme, but just apply a skin on the SharePoint default look - by specifying a value for this property, you make SharePoint include your style sheet in its pages.
 
Although it would look like the AlernateCssUrl property has a very limited use, you could not be more mistaken. There are pages in SharePoint that do not implement any masterpage - not the default.master, not the application.master. One example is the Picture Slideshow page.

This is the case where the AlternateCssUrl property comes in handy - by initializing this property value with your custom css style sheet, you can rest assured that all the SharePoint pages in a site will be skinned.
 

Posted by Madalina at 17:33:51 | Permalink | No Comments »

Wednesday, January 7, 2009

SharePoint System MasterPage - hide the Search control or delete it?

It is a known fact that SharePoint can skin its system pages.
When designing a system masterpage for SharePoint, there are 2 ways that you can follow: take the generic application.master and customize it, or start from the existing masterpage of the site, supposing you are working on a skinned site.

I usually start from the main masterpage of the site and take into account the fact that the system masterpage needs a few tweaks.
The 3 main differences between the regular site pages and system pages in SharePoint are:
1. The Search control is missing on the system pages.
2. The Breadcrumb is different on the system pages.
3. The left navigation placeholder is empty.

Letting the Breadcrumb tweak for you to discover :), I will make you now aware of the fact that the Search control is not needed on the system pages master.
When you don’t want use certain controls (ContentPlaceHolders) on a SharePoint masterpage, you generally choose to hide them, not delete them, by placing them in a hidden panel. SharePoint will still find them and so not retrieve an error, but they will not show up in the page design, giving the site the look of your choice.
Following this pattern, I first hid the Search control on the system page in a panel. Everything worked fine until I tried to Check In/ Check Out a file and i got this error:
“Unable to validate data. at System.Web.Configuration.MachineKeySection.GetDecodedData(Byte[] buf, Byte[] modifier, Int32 start, Int32 length, Int32& dataLength) at System.Web.UI.ObjectStateFormatter.Deserialize(String inputString) “

This error did not appear when the site was skinned with the SharePoint Default theme. So the problem laid in the customized application.master file. The only difference between the application.master and my system.master pages was that in my master I had the Search control place holder hidden (but present).
After deleting it, everything worked fine. Except… WIki Sites - History of a page retrieved an error: “Search PlaceHolder not found”.

So the answer to the question in the title is - Delete the Search control, leave the PlaceHolder:
< asp:ContentPlaceHolder id=”PlaceHolderSearchArea” runat=”server” >
< / asp:ContentPlaceHolder >
  

Posted by Madalina at 18:00:00 | Permalink | Comments (2)

Thursday, November 27, 2008

SharePoint Breadcrumb - fit it in the design as a unitary control

When a designer creates a mockup for a SharePoint site, (s)he almost never includes the breadcrumb(s). In my experience, that is not a very good option - as the breadcrumbs are vital to the navigation, especially if the site top navigation is not inherited in the subsites.
There are 2 breadcrumb controls in a site: the one on the top of the page, that maps from the root site down to the current site and the breadcrumb below the top navigation, that maps the current site.
 

 
Generally, if I am going to include them in the design, I prefer to have them both in one place. But as you can see, the last node of the first breadcrumb is the first node of the second. So just placing them one after the other won’t do - one node will repeat itself in the middle of the breadcrumb.
There is a simple solution to that. The Breadcrumb control allows for a separate css class dedicated to its root node. 
So going in the master page html code and setting a value for that attribute of the second breadcrumb is the first step. Name it as you like.
The second step is to define that class in the styling css file. The ‘display’ attribute with the ‘none’ value will do the trick. You have just hidden the root node of the second breadcrumb.
This way, you can list the two breadcrumbs and make it look like you only have one breadcrumb.
 
Posted by Madalina at 08:12:36 | Permalink | No Comments »

Thursday, May 29, 2008

SharePoint on Windows Vista

“Are you a SharePoint developer tired of starting VirtualPC evey morning when you go to work? Are you dissapointed in remote connection speed and how Visual Studio is slow in there? Then this is the post for you!”

This sounds like a soap opera commercial :) I have Windows Vista installed on my laptop and I am kind of fond of it… Not only because it does it’s job :) but also because I have spent a while installing applications and configuring it. So when I work on a SharePoint web part or a Sharepoint MasterPage design, I need to use a remote machine.
Not any more though. The
Bomboo guys found a solution for that. I tried it and so far I installed WSS 3.0 on my Vista, created the first site, installed SPD and created a new masterpage. It all worked.

“Get it today! Available in stores now!”

Posted by Madalina at 08:17:21 | Permalink | No Comments »