Sharepoint 2010 – Why is Text Layout Always Disabled?

Sharepoint 2010 uses the feature rich ribbon, similar to what was introduced in the Microsoft Office 2007 suite.  This ribbon provides users with many capabilities, such as text editing and content publishing.  Among these features is the ability to change the format of a rich text control, adding headers, footers and columns.

When designing a publishing site, I had hoped to make use of this neat feature to keep Page Layout designs simple and easy to update for content contributors.  However, when designing the publishing site, I noticed that I was unable to make use of this feature of the ribbon, as it was always disabled.

Researching the problem, I was having a hard time finding out why this button was disabled.  I checked security settings and the control properties in my Page Layout aspx file, nothing seemed to solve this dilemna.

It turned out, after asking on a Sharepoint forum, that the Text Layout feature is only available for wiki sites.  The Publishing Portal and Enterprise Wiki are built off of the publishing framework, which replaces the Text Layout button with the Page Layout button.

So custom layouts will have to be design specifically at the Page Layout.  If a layout requires 3 columns of data, then a Page Layout has to be created that allows 3 columns of data.  Lesson learned, I am providing this as a tip for anyone else having a hard time figuring out why they can’t use the Text Layout button in their Publishing site.



SharePoint 2010 Deprecated Types and Methods

If you are writing code for SharePoint 2010, please refer to the the link below to avoid calling deprecated APIs.

Web Content Management System Checklist

Web Content Management (WCM) is the practice of creating, controlling and publishing web content using specialized tools.  The specialized tools are collectively know as a Web Content Management System or WCMS.   Most entities (business, municipalities, hospitals, etc) these days have some form of web presence, which is typically a dedicated website.  Most people think of a website as a collection of static web pages.   This was the case five or six years ago, but today most websites have functional requirements that go well beyond a simple What You See Is What You Get (WYSIWYG) website.   I have worked with several customers who still use technology that is focused on simply creating and publishing web pages.  However, the customer’s needs always go well beyond simply pushing HTML pages onto the web. This post is intended to provide a checklist of features you should keep in mind, before deciding on a WCM solution.

Continue reading

Hello World Feature in Windows SharePoint Services 3.0

Let’s go back to basics and see how to create a simple custom feature in WSS.  I assume you already create a WSS site or have access to one.

Creating HelloWorldBasic Project

Navigate to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\FEATURES and create a new folder HelloWorldBasic

Creating feature.xml File

Create a feature.xml file with the following info

Title="Hello World Feature"
Description="My custom feature"

<ElementManifest Location="elements.xml"/>
Creating elements.xml File

In the same folder, create a new file and called it elements.xml with following info

Title="Hello World"
Description="My custom menu item"
Installing HelloWorldBasic Feature

Open the command prompt and execute the commands as shown below


You should see a successful msg

Activating the Feature in WSS

Open your favorite browser and navigate to your WSS site.  From there hit Site Actions | Site Settings | Site features and hit the Activate button


You can run your custom feature now by going back to the Site Actions menu


Hope this helps.

Phong Hoang
Development Manager
ImageSource, Inc.


SharePoint Event Handlers

A while back, I found myself in a situation where I assumed MOSS Document Libraries were capable of creating thumbnails from images.  After all, MOSS creates thumbnails of images for Picture libraries.  It turns out this was a bad assumption.  This feature had been promised to a customer, so I had to find a solution.

Continue reading

Windows SharePoint Services Tips

If you are working with the WSS 3 SDK, you may have noticed that some of the method names are confusing.  The reason has something to do with the legacy naming from the old SharePoint Team Services, but you can avoid the confusion by keeping the following terminology in mind when you are reading the WSS doc.

  • Site  = Site Collection
  • Web = Site
  • RootWeb =  Top Level Site

Below is a sample code that will hopefully clear this up.

SPWebService webService = SPWebService.ContentService;
SPWebApplicationCollection webAppColl = webService.WebApplications;

foreach (SPWebApplication webApp in webAppColl)
    Console.WriteLine("Web App Name = " + webApp.Name);
    SPSiteCollection siteColl = webApp.Sites;

    foreach (SPSite site in siteColl)
        SPWeb web = site.RootWeb;
        Console.WriteLine("Top Level Site Title = " + web.Title);

Hope this helps.


Phong Hoang

Development Manager

ImageSource, Inc.

Share on LinkedIn   Share on Twitter