SharePoint 2010 Training Session 5
Upcoming SlideShare
Loading in...5
×
 

SharePoint 2010 Training Session 5

on

  • 1,176 views

 

Statistics

Views

Total Views
1,176
Views on SlideShare
1,176
Embed Views
0

Actions

Likes
1
Downloads
40
Comments
1

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

SharePoint 2010 Training Session 5 SharePoint 2010 Training Session 5 Presentation Transcript

  • SharePoint 2010 Session - 5By: Usman Zafar Malik[MCTS: MOSS 2007], [MSCBSS: CRM 3.0 / 4.0], MCP
  • SharePoint 2010 Development
  • SharePoint 2010 Development• Simple Web parts• Advance Level Web parts
  • SharePoint 2010 Simple Web parts
  • Simple Web partsWhat are web parts?• Web Part is also called a Web Widget, is an ASP.NET server control which is added to a Web Part Zone on Web Part Pages by users at run time. It enable end users to modify the content, appearance, and behavior of Web pages directly from a browser.Possible scopes• Site Level.
  • Simple Web partsTwo types of web parts• Pure ASP.Net based web parts Derived from:- System.Web.UI.WebControls.WebParts.WebPart – Generic web parts, that can be used in SharePoint and outside the SharePoint domain.• SharePoint based web parts Derived from:- Microsoft.SharePoint.WebPartPages.WebPart – Only used in the SharePoint domain.
  • Simple Web partsFurther Categorization in Web parts• Web parts - A class derived from “Webparts” class• Visual web parts - A class derived from “Webparts” but also contains auser control in this web part. - Can’t be used in sandboxed solutions.
  • Simple Web parts
  • Simple Web parts
  • Simple Web parts
  • Simple Web parts
  • Simple Web partsDefine properties in web partsThe WebBrowseable attribute specifies that the decorated property should appear in the editor componentof the web part. It only allows the end user to modify the property and does nothing about persistence.The Personalizable attribute specifies that the value of the decorated property must be persisted in theSharePoint backend, either in the user store (by default) or in the shared store (if the Shared scope isspecified). It only cares about persistence and does nothing about the property presence in the editorcomponent.So, if you decorate a property with [WebBrowsable] and not [Personalizable], the end user will be able tomodify it in the editor component but its new value wont be persisted.Conversely, if you decorate a property with [Personalizable] and not [WebBrowsable], its value will bepersisted but the end user wont be allowed to modify it.
  • Simple Web parts Life Cycle OnInit OnLoad CreateChildControls OnPreRender SaveViewState Site Render RenderContents OnUnload Dispose
  • Visual Web parts
  • Visual Web parts
  • Visual Web parts
  • Visual Web parts
  • Visual Web parts Life Cycle SimpleVisualWebPart - OnInit SimpleVisualWebPart - OnLoad SimpleVisualWebPart - CreateChildControls SimpleVisualWebPartUserControl - OnInit SimpleVisualWebPartUserControl - OnLoad SimpleVisualWebPartUserControl - Page_Load SimpleVisualWebPart - OnPreRender SimpleVisualWebPartUserControl - OnPreRender SimpleVisualWebPart - SaveViewState SimpleVisualWebPartUserControl - SaveViewState SimpleVisualWebPart - Render SimpleVisualWebPartUserControl - Render
  • Visual Web parts Life Cycle SimpleVisualWebPart - RenderContents SimpleVisualWebPartUserControl - OnUnload SimpleVisualWebPartUserControl - Dispose SimpleVisualWebPart - OnUnload SimpleVisualWebPart - Dispose
  • SharePoint 2010 Advance Level Web parts
  • Advance Level Web partsAdvance Level web parts?• Web part which contains toolpart, or we add some custom controls in Web part Editor Tool part section.
  • Advance Level Web partsAdvance Level web parts?• Web part which contains Custom Webpart Editor Section• Two ways to create Custom Editor Part / Toolpart of Web part – By inheriting class from “Microsoft.SharePoint.WebPartPages.ToolPart” – By Implementing Interface “IWebEditable” on Toolpart class
  • Advance Level Web partsUsing Toolpart class
  • Advance Level Web partsUsing Toolpart class
  • Advance Level Web parts using Toolpart class
  • Advance Level Web parts using Toolpart classThree Level of ToolParts – WebPartToolPart – CustomPropertyToolPart – Add Custom ToolPart
  • Advance Level Web parts using Toolpart classWebPartToolPartDefault WebPart properties:-• Appearance – Title – Width – Frame State – Frame Style• Layout – Visible on Page – Direction – Zone – Part Order• Advanced – Allow Minimize – Allow Close – Allow Zone Change – Allow Export Sensitive Properties – Detail Link – Description – Help Link – Icon File (Large) – Icon File (Small) – Missing Assembly Error – Target Audiences
  • Advance Level Web parts using Toolpart classCustomPropertyToolPartAn additional ToolPart that is added whencustom properties are added to the WebPartprogrammatically.Example:- First Name, Last Name
  • Advance Level Web parts using Toolpart classCustomToolPartA toolpart which you have programmaticallycreated and want to add in web part editor part.Example:- Derived Classes from“Microsoft.SharePoint.WebPartPages.ToolPart”wants to add in the Web part’s Editor section.
  • Advance Level Web parts using Toolpart classpublic override Microsoft.SharePoint.WebPartPages.ToolPart[] GetToolParts(){ PersonDetailsToolPart CustomToolPart_ = new PersonDetailsToolPart(); CustomToolPart_.Title = "Company Details"; Microsoft.SharePoint.WebPartPages.ToolPart[] toolParts = newMicrosoft.SharePoint.WebPartPages.ToolPart[3]; toolParts[0] = new Microsoft.SharePoint.WebPartPages.WebPartToolPart(); toolParts[1] = new Microsoft.SharePoint.WebPartPages.CustomPropertyToolPart(); toolParts[2] = CustomToolPart_; return toolParts;}Override the “GetToolParts()” method in order to add the custom toolpart in to your web part editorpart section.
  • Advance Level Web parts using Toolpart classCommon Webpart Propertiesthis.AllowMinimize = true/falsethis.AllowHide = true/false;this.AllowClose = false;this.ChromeType = PartChromeType.None; (if userwants to remove the border of the web part )
  • Advance Level Web parts using IWebEditable InterfaceSteps- The web part which has the Custom Editor Part must implement the “IWebEditable “interface. #region IWebEditable Members EditorPartCollection IWebEditable.CreateEditorParts() { // Adding your custom web part editor part (Example:- CustomEditor) List<EditorPart> editors = new List<EditorPart>(); editors.Add(new CustomEditor()); return new EditorPartCollection(editors); } object IWebEditable.WebBrowsableObject { get { return this; } // what is being edited :- Returning the Web part itself. } #endregion
  • Advance Level Web parts using IWebEditable InterfaceSteps- The Custom Editor Webpart must be inherited from “EditorPart” class.- It must overrides two methods. 1- ApplyChanges Used for copy content from Editor Part to Web part. 2- SyncChanges Used for Copy content from Web part to Editor Part.
  • Q&A
  • Thanks !