Customization of SharePoint list menu item – Part 1 add Custom Action Item

Customization of SharePoint list menu item – Part 1 add Custom Action Item

Posted by chrissyz on June 6, 2009

It has been a while since last time I blogged. And I do feel bad about being ignorant of my blog for such a long time. So this time I am gonna show some code to feed those hungry souls. Today I would like to talk about adding a list menu item through feature. This example is to add a menu item in a calendar list.

We all know a feature includes two files, feature.xml and elements.xml

In our feature.xml, nothing special, it will look like any other normal
feature.xml

<?xml version=“1.0“encoding=“utf-8“?>

<Feature  Id=“GUID”
          Title=”Calender list Menu“
          Description=“Creates Custom Action in Calender list item menu”
          Version=“12.0.0.0″
          Hidden=“TRUE”
          Scope=“Site“                                                                
          xmlns=“http://schemas.microsoft.com/sharepoint/“>
<ElementManifests>

<ElementManifest Location=“elements.xml“/>

</ElementManifests>

</Feature>

Then comes the elements.xml

<?xml version=“1.0“encoding=“utf-8“?>

<Elements xmlns=“http://schemas.microsoft.com/sharepoint/“>

<CustomAction  
    Id=“F699684E-3127-428e-BF2B-EA71CA6E36C8“   
    RegistrationType=“List“   
    RegistrationId=“106“  
    Location=“EditControlBlock“  
    Sequence=“1000“  
    Title=“Calendar Custom Action“>
    <UrlAction
Url=“~site/YourPageLibrary/YourCustomPage.aspx?ID={ItemId}&amp;List={ListId}“/>
  </CustomAction>

</Elements>

RegistrationType can be “ContentType”, “FileType” (for example if you only want your feature appear to .xsn file), list and Prog ID.

The RegistrationID element is used to specifiy the ID of RegistrationType. If RegistrationType is “ContentType”, to get Registration ID, open the document library settings, in the ContentType section click on the content type you
choose, then grab the hex string in the url after “ctype=” parameter.

If you use FileType as RegistrationType, then just add the “.doc” or “.xls” etc in the RegistrationID

If the RegistrationType is list or ProgID, John Holiday has a blog summarized all the RegistrationID, look it up!

你可能感兴趣的:(SharePoint)