Recently Viewed...
SnowCovered Top Sellers

Live Content uses Web 2.0 approach to provide a Rich User Interface and streamlines content presentation by overlaying content on current page. Overlay images, videos, audio, text/html content, flash, dotnetnuke modules, and external content. Experience the demo...

Gloss is the first ALL COLORS! skin, featuring a powerful XML-based flash and being 100% W3C CSS XHMTL1.0 compliant. Tune it yourself on the fly, changing colors, backgrounds, containers, text color and size, width and more! Brilliant!

Ultra Video Gallery is a brother product of Ultra Media Gallery, UVG allows you to add videos in various format and automatically convert them to flv format, you also can add videos from embed code and play them in our integrated flash video player.

'Relationship Building' and 'Communication' are two essential nuts and bolts for a business to prosper. This module allows you to bridge both of these and easily generate continuous awareness of your web site, products and services. Your prospects and customers will greatly appreciate this featur

Powerful, Ajax Enabled, Easy to Use. Document Management has never been better. Open-DocumentLibrary allows DotNetNuke users to share and manage documents in a flexible, intelligent way, offering granular control over Folder and Document access.

In this day and age, knowing as much detailed information as possible about your customer, prospect or web site user is essential. Thankfully, the new 'Dynamics Forms' module from Data Springs, makes it easier than ever to segment your data collection efforts.

Ultra Media Gallery is the most popular photo gallery and media gallery solution for DotNetNuke, UMG offers 10 different flash player to browse your gallery with completely different user interface experience.

Capture your users attention, enrich your site with multimedia flash, and create and opt in distribution list for your DNN site. These are just a few of the many features the Data Springs Module Collection can provide you.

The Catalyst skins are professionally designed, coded and packaged by a team of DotNetNuke experts. The skins are available in 12 great colours. This skin is easily customisable with our unique DrNuke EasyMod technology. Try our demo!

ALL NEW ! - Minimalist includes skin packs in 12 great colors. Each color has Flat, Gradient and Glass versions. Feature rich XML Flash header, perfect for just about any purpose. 9 Different menu options in each skin pack; 3 horizontal menus, 3 vertical menus and 3 all-new Twin level menus . . .

    |   Register   |   Thursday, December 04, 2008   
You are here:Resources  Articles & Information  Sharepoint 2007 Custom Web Parts  


Custom Web Parts for SharePoint Portal 2007

Developing and Deploying Custom Web Parts for SharePoint Portal 2007

 


Overview and difference with SPS 2003:

Developing Web Part for SharePoint Portal 2007 is different as compared to developing for SPS 2003. Web Parts Developed in .Net 1.1 for SPS 2003 used the SharePoint.WebPartPages namespace, however the Web Part in ASP.Net 2.0 is found under the System.Web.UI.WebControls.WebParts.

 

 

Development of Web Part in VS 2005

To Get Started with creating Custom Web Part for MOSS 2007 in Microsoft Visual Studio 2005, Open the IDE and create a new C# project, Select Class Library as Project Type. Name It as NewWebPart.

 

 

image001.jpg

 

Add a reference to the System.Web  from .Net components into the project. The System.Web dll contains the required namespace of System.Web.UI.WebControls.WebParts .

 

image003.jpg

 

 

 

In The Project explorer view rename the Class1.cs with NewWbPart.cs to be consistent with this example; this will result in renaming the Class name as well. With the help of “using” keyword include the namespaces as shown in the code example below. Derive / Extend the NewWebPart Class from the WebPart Class ( System.Web.UI.WebControls.WebParts.WebPart), and add the code as shown below. The CreateChildren Control is same as in .Net 1.1, that it would create and add controls to this Web Part Class,. In this case I have only added a WebControl.Calender Object. The RenderControl Method is an override for the WebPart Base Class and calls the RenderChildren Method, this causes the Children Controls to be rendered on the Particular HtmlTextWriter passed as a parameter to the method.

 


 

using System;

using System.Collections.Generic;

using System.Text;

 

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

 

namespace NewWepPart

{

    public class NewWebPart : WebPart

    {

 

        protected override void CreateChildControls()

        {

            Calendar cldr = new Calendar();

            cldr.Enabled = true;

            cldr.ShowGridLines = true;

            cldr.ShowTitle = true;

            cldr.EnableViewState = true;

      cldr.SelectedDate = DateTime.Now;

 

            Controls.Add(cldr);       �

          �

        }

 

        public override void RenderControl(HtmlTextWriter writer)

        {

 

            RenderChildren(writer);

        }

 

    }

}

 

 


 

Build the project and on successful built you are ready to Deploy the Web Part to the Portal Site.

 

Deployment of Web Part:

In order to deploy a web part to a SharePoint portal 2007 site, we must have the URL of the site to which we want our web part needs to be deployed (displayed in fact). As it  is mentioned earlier that the Web Parts developed in .Net 2.0 environment does have a .CAB project , instead an assembly is created on build of project. Now there are two choices to deploy the assembly to the SharePoint portal directory.

  • Deploy the assembly to the Assembly Folder (GAC) (requires the assembly to be stron named).
  • Put the assembly to the bin folder of the portal directory.

For the sake of simplicity, the later choice is being demonstrated in this example.


Putting Assembly in Bin Folder:

The MOSS 2007 creates every portal in the inetpub\wwwroot\wss folder. The easiest way to find the bin folder from these folder hierarchies is to go from inetmgr console. Locate the appropriate portal (for which u want to deploy the web part), identified with the port number. Right click and have Properties. Under the Home Directory Tab, note the path in Local path text box. Verify if the bin folder exists in the specified path by opening it in browser. If the folder doesn’t exist then create one. Now copy the assembly form the project output folder and paste it in bin folder of portal.

 

 

image004.png

However there is another work around for putting the assembly in to the portal’s bin folder again ad again each time the Web Part Project is built with changes.

Right click on the project name (NewWebPart) in the VS.Net 2005 IDE and click properties. Under  the Build page paste the same path copied from inetmgr console into the Output Path. As shown in figure below. This will result in the latest assembly automatically deployed to the bin folder every time the project is built.

 

image005.png

 

 

 

 

Adding the Safe Control Entry:

Even though the assembly is present in the Portal’s Bin folder, there is another step required to make the Control (Web Part) assembly usable on the Portal Pages. Since the control will need to render on multiple machines in different browsers with as many user accounts as the organizations have. There is a need to declare the control as “safe”. To do so open the web.config file placed under the portal’s directory in the VS.Net 2005 IDE.

 

image007.png

 

 

 

Then edit the file in the section of SafeControls, create a new SafeControl entry for our assembly as shown below. Save the file and close it.

 

 

<SafeControls>

.

.

.

<SafeControl Assembly="NewWebPart" Namespace="NewWebPart" TypeName="*" Safe="True" />

 

SafeControls>

  

Configuring Portal to use NewWebPart

Since now the web part have been written and deployed to the desired portal’s directory. The next task is to use the web part on the Portal’s Site. The Web Part Deployed to the portal can be placed on any site within that Portal. For convenience this NewWebPart is demonstrated to be placed on the home page of default Portal.

Open the portal site in the internet explorer; in this case http://oss1 is the URL for the default portal, ensuring that the current logged in user has the administrative rights on the portal site.

 

To begin with, the first step is to add the newly deployed web to the Portal’s web part gallery, since the portal is using the configuration databases to keep record of the contents of the portal, our newly created web part’s information doesn’t exist in the database. We need to add the web part to the Web Part Gallery before we can use it.

 

To do so, the following steps should be followed.

  1. Click on the Site Actions button and then select Site Settings.

image008.png

 

 

  1. On the site settings page under Galleries column click on the Web Parts.

 


image010.png

  1. On the Web Part Gallery Page click on the New button, to add the new web part assembly to the gallery.

 

image012.png

  1. On the New Web Parts page locate the NewWebPart in the list, check the check box on the left and click on the Populate Gallery button the top of the page. This will result in the Web Part entry creation in the Web Part Gallery list, and hence it can be used from now on from the gallery. It can be notices easily that the Web Parts developed form the new Frame work of 2.0 have an extension of .webpart after their names. Whereas in earlier versions, it was a .dwp file. Both the .webpart  and .dwp  files are the XML definition of the Web Part.

 

image014.png

  1. Until this step the web part is ready to be used on the site by selecting it from Web Part Gallery. Click on the Site Actions button on the page and then select Edit Page, this will modify the appearance of the page to enable the edit view. In this view Web Part Zones are highlighted so that a user can add a web part to the zone, Click on the Add a Web Part button in the left zone to add the Web Part.

 

image016.png

  1. Select the NewWebPart from the web part list . it is found under the Misc section and then click on�Advanced Web Part gallery and options.

 

image018.png

  1. In the�Add Web Part Pane at right , select Home  Gallery and then drag the NewWebPart from the pane into the Web Part Zone.

 

image021.jpg

  1. Click on the Exit Edit Mode link on the page and the site will return to the view mode.

image023.jpg

Feedback Comments
Records per Page
Page 4 of 5First   Previous   1  2  3  [4]  5  Next   Last   
         4/11/2008 1:13:45 PM
Invisible Web Part I couldnt see the web part but then I changed my class to public, repeated all the steps and it worked.

         4/8/2008 2:02:59 PM
Invisible Web Part Try checking to see whther or not your webpart''s class is declared public, otherwise it won''t show up in the list.

         4/4/2008 4:46:51 AM
Couldnt Complete the process Hey the same problem here, after i clicked new i cannot see my newly entered webpart in the list.......where can i see the .webpart file of the webpart i d

         3/31/2008 11:44:18 AM
Cannot see the NewWebPart.dll Same here. After I clicked New, NewWebPart.dll was not in the list. Any idea? It seems all files in the list are .dwp and .webpart.

         3/31/2008 11:44:00 AM
Cannot see the NewWebPart.dll Same here. After I clicked New, NewWebPart.dll was not in the list. Any idea? It seems all files in the list are .dwp and .webpart.

         3/26/2008 10:59:59 AM
Cannot See the Webpart Same deal here. Can''t see the web part when I click New.

         3/22/2008 7:47:35 PM
Cannot See the Webpart - Help Cannot see the webpart either when I press New. Help!

         3/20/2008 6:29:17 AM
Connecting this calendar with List Hi, This is a good way to display a calendar on sharepoint site..... But can give give an idea how do i connect this calendar with existing event List in sharepoint

         3/18/2008 8:34:46 AM
Nice work man Thanks a lot man.I got it .. and i saw a post saying its not working , a small suggestion to him, when you add safe control to web.config file do iisreset and then try again.

         3/13/2008 6:28:52 AM
regarding dll I did all accoding to your article 3 times but for me the Webpart is not showing when i press on NEW in the webpart gallery. can anyone help me, pls????

Feedback





Enter the code shown above in the box below
Send

 

DNN Modules
SharePoint Web Parts
Flash Image Rotator for SharePoint 2007

Flash Image Rotator Web Part for SharePoint 2007 

 

Who would have thought? Flash with Sharepoint! The FIRST and ONLY flash rotation web part for Sharepoint. The Flash Image Rotator displays selected images and then rotates between the images. Several extended and optional features allow you to select the time to rotate each image, fade between i...more

Price: $129.99
 
Flash News Ticker for SharePoint 2007

Flash News Ticker Web Part for SharePoint 2007 

 

Provide current news items with a user-friendly news ticker for your Sharepoint Portal. With millions of web sites offering information you need a fun way to display information and the solution is Flash News Ticker....more

Price: $139.99
 
View Stock Quote Web Part

Stock Quote Web Part for SharePoint 2007

 

Giving your site visitors relevant information is critical. With the Data Springs Stock Web Part you can provide your users with up to date financial information....more

Price: $149.99
 
Random Image Web Part for SharePoint / MOSS 2007

Random Image Web Part for SharePoint 2007

With Random Image for Sharepoint 2007, you can select multiple images to display randomly when the web part loads...

Price: $139.99
 
SharePoint Charts Web Part

MOSS Charts Web Part for SharePoint 2007

The MOSS Chart Web Part is a web part built by Data Springs for the purpose of rendering several chart types based on data from a SharePoint list on a MOSS 2007 or WSS 3.0 Site ... more

Price: $269.99
 
Copyright 2005 - 2008 by Data Springs, Inc.
Contact Us | Terms Of Use | Privacy Statement