Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sharepoint solution packaging: how do I get a custom icon for my features?

I am not sure how foolish I am being here!

I have a solution that packages up some master pages and layouts etc which I can deploy fine and the feature appears in the "Site Collection Features" list fine. However I would like to put a custom icon next to my feature. I would like the icon to be in the solution package and so require the image to be put in a list or folder when the solution is deployed (rather than a feature activated).

Is this possible? simple?

There is something about all this sharepoint solution/feature.xml/element.xml I don't grok yet!

like image 318
Loofer Avatar asked Apr 01 '09 10:04

Loofer


2 Answers

It is possible and simple.

  1. In your Feature.xml file, simply include the ImageUrl="" attribute and specify the location of your image. The best practice is to create a folder under the Template\Images folder with your images and then reference this location
  2. Include the folder which contains your images in the solution ddf file
  3. Once deployed, you should have a %12HIVE%\Templates\Images\ACMEImages folder which contains your image

Feature.xml sample:

<Feature 
    Id="21F724AE-9C1C-4F4D-AAE9-7789CA01A7E3"
    Title="ACME Lists"
    Description="List definitions for the ACME"  
    Version="1.0.0.0"
    Hidden="false"
    Scope="Web"
    ImageUrl="ACMEImages\acmelogo.png"
    xmlns="http://schemas.microsoft.com/sharepoint/">
    <!-- other feature file info omitted -->

DDF file sample:

.Set DestinationDir=IMAGES\AcmeImagesRootFiles\TEMPLATE\IMAGES\ACMEIMages\acmelogo.png
like image 109
Pete Skelly Avatar answered Sep 21 '22 00:09

Pete Skelly


In SharePoint 2010, the Microsoft Default icon is: GenericFeature.gif - a 31 x 22 image. With VS 2010 and SP 2010, you can add a SharePoint "Images" mapped folder to your SharePoint project. Then place your image in this folder. Be sure to provide the Image URL in the Properties panel of the *.feature object. Use a path to the image as noted above.

like image 29
mgb69 Avatar answered Sep 20 '22 00:09

mgb69