Uns hat gerade eine Anfrage aus Deutschland bzgl. Ausdrucken eines Listeneintrages ereilt. Nachdem ich schon sehr lange nichts mehr gebloggt habe und gerade im Auto Richtung Salzburg sitze (keine Sorge – als Beifahrer ;-))-> dachte ich so bei mir, das ist die ideale Gelegenheit ein Comeback zu feiern :-D.
Bingen brachte im ersten Schritt keine wirklich brauchbare Lösung. Es gibt zwar eine SharePoint Designer Lösung - http://xblogs.kompas-xnet.si/post/SharePoint-Print-List-Item.aspx - das müsste man aber mühsam für jede Liste einrichten und einige kommerzielle Lösung, aber wer will schon für so eine Lösung (die eigentlich im Standard enthalten sein sollte) Geld ausgeben.
Somit Visual Studio starten und eine Sandbox Solution entwickeln. Leeres Element hinzufügen:

In das neu erstellte Elements.xml folgendes Einfügen:
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<CustomAction Id="PrintRibbon" Location="CommandUI.Ribbon" Sequence="20">
<CommandUIExtension>
<CommandUIDefinitions>
<CommandUIDefinition Location="Ribbon.ListForm.Display.Actions.Controls._children">
<Button Id="PrintRibbonButton" Command="Print"
Sequence="20" Image32by32="/_layouts/images/centraladmin_security_informationpolicy_32x32.png"
Description="Prints the actual form" LabelText="Print Form"
TemplateAlias="o1" />
</CommandUIDefinition>
</CommandUIDefinitions>
<CommandUIHandlers>
<CommandUIHandler Command="Print"
CommandAction="javascript:window.print(SP.UI.Dialog.html);" />
</CommandUIHandlers>
</CommandUIExtension>
</CustomAction>
</Elements>
deployen und Voila

Ein paar Links und Tipps, die zum Entwickeln eines eigenen Menü-Eintrags sehr nützlich sind:
· Adding ribbon items into existing tabs/groups (ribbon customization part 2)
· Work with the SharePoint 2010 Ribbon User Interface
· TemplateAlias: o1 (großer Button), o2 (kleiner Button)
· Die Location und Sequence ist wichtig für die Positionierung ;-)
Und für alle Entwickler – schaut euch den SP.UI Namespace an, die in diesem Fall verwendete SP.UI.Dialog Klasse ist ziemlich genial -> http://msdn.microsoft.com/en-us/library/ee552096.aspx
Wer die Sandbox wsp haben will -> kann sich gerne bei uns melden…. www.sharxx.com