Beren.it

All that you can leave behind

RichText Editor in SharePoint 2010

Il Richt text editor out-of-the-box del CMS di Sharepoint 2010

Il RichText editor in Sharepoint, almeno fino al 2007, è sempre stato un grosso problema: difficile da customizzare e soprattutto non particolarmente sofisticato, spesso richiedeva l'ausilio di editor di terze parti (come il Rad per fare uno dei nomi più gettonati). Così entrando nella nuova piattaforma di mamma Microsoft, si riproponeva il problema: quale editor WYSIWYG avranno implementato i pazzi di Redmond? Avranno provato a colmare questo gap, magari con una soluzione intelligente?
La risposta è SI, ed è un SI pieno perchè partendo dal concetto che il nuovo SharePoint rende sempre disponibile nella pagina il Ribbon Office like, con pochissima configurazione è possibile ottenere lo strumento di formattazione del testo tipico ad esempio di Word con tutte le funzionalità ad esso connesse come si può notare dall'immagine qui sotto:

Per poter usufruire di quersto tipo di controllo occorrono fondamentalmente due cose:

  1. Un custom field di tipo HTML
  2. Un controllo di PublishingWebControls:RichHtmlField

Per realizzare il primo basta creare una feature che deploy un field di tipo HTML nel modo seguente:

[XML]

  <Field ID="{27F5254A-888B-48c6-909D-C87BCDB264C8}"
  Name="RichTextEditor"
  Type="HTML"
  Group="Custom Xin Field"
  DisplayName ="Rich Text Xin Editor"
  RichText="TRUE"
  RichTextMode="FullHtml" >

dove i valori chiave sono: Type="HTML", RichText="TRUE" e RichTextMode="FullHtml".
Per quanto riguarda il controllo da embeddare nella pagina invece fondamentalmente è sufficiente specificare il field su cui si andrà a lavorare (inutile dire che il field deve essere associato alla pagina in cui poi il controllo è inserito):

[XML]

<PublishingWebControls:RichHtmlField 
FieldName="RichTextEditor" runat="server"/>

Va detto che per chi non gradisse tutte le libertà fornite dal controllo c'è una vasta gamma di opzioni attivabili sullo stesso, ad esempio per disattivare la scelta del font, l'inserimento di URL etc... Per un overview consiglio di dare un occhio all'MSDN.