What is Delegate control
- Delegate controls available in a SharePoint allow branding or substitution of common elements without altering master page.
- Substitute registered with control with lowest sequence number based on control ID.(Microsoft - here the default value is 100 so your sequence must be lower than this for your control to be loaded instead.)
- Parameters can be passed to the control via the declaration http://msdn.microsoft.com/en-us/library/ms463169.aspx
Type of Delegate
- Multi Delegate (Delegate Control load more than one user/server control.)
- Single Delegate
Single Delegate: If delegate without “AllowMultipleControls="true" ” attribute in the markup; It means the controls only replace with the user control; that has registered as lowest sequence number.
HTML Example of Delegate control
<SharePoint:DelegateControl id="ID_SuiteLinksDelegate" ControlId="SuiteLinksDelegate" runat="server" />
Following are the list of Delegate Controls available in SharePoint 2010, Highlighted are newly added in SharePoint 2013.
- AdditionalPageHead
- GlobalSiteLink0
- GlobalSiteLink2
- GlobalSiteLink3
- PublishingConsole
- PageHeader
- TopNavigationDataSource
- TreeViewAndDataSource
- PageFooter
- QuickLaunchDataSource
- SmallSearchInputBox
- GlobalNavigation
- SuiteBarBrandingDelegate (2013)
- SuiteLinksDelegate(2013)
- PromotedActions(2013)
SuiteBarBrandingDelegate: It will change the top left bar. Here in my example I replace "SharePoint" with "My SharePoint Site".
This is the HTML of the delegate control.
Replace this with
SuiteLinksDelegate: Replace the left top links bar with custom links. As showing in the below images. Replace "Newsfeed, SkyDrive, Sites" with "About Us, Contact Us, Feedback" links.
Master Page SuiteLinksDelegate HTML markup.
Replace with with Image.
PromotedActions: This is multi delegate control. Added link between "Share" and "Follow" links ie "Facebook" link. As showing below.
This is the HTML of the delegate control.
Replace this with
Feature Element file
Most of the developer even don't know the power of delegate control.
There are the different master pages available in the SharePoint 2013, so it could be possible you would not found all the above delegate control in master page. ex. "v4.master" page not containing the "PromotedActions" delegate control. This is only available in "oslo.master" page.
In SharePoint 2013 SharePoint:AjaxDelta wrapping all our favorite Delegate Controls and other elements in the Master Page. So now delegate control comes under the"SharePoint 2013 Minimal Download Strategy (MSD)"
Attached code with this Post.
No comments:
Post a Comment