SharePoint 2010: Añadiendo propiedades a la Toolpart (III)!

Siguiendo con la serie de posts sobre como añadir propiedades a la toolpart de configuración de una WebPart, en esta ocasión vamos a complementar los artículos previos (en particular el primero de la serie) indicando que otros atributos tenemos disponibles para facilitar la adicción de nuevas propiedades de configuración. Pero antes de empezar, os dejo la referencia a los artículos previos de la serie:

Tal y como veíamos en el primer post de la serie, una primera técnica de añadir propiedades consiste en añadir a nuestro código una propiedad que decoremos con los atributos WebBrowsable y Personalizable…además de estos atributos, podremos añadir otros:

  • WebBrowsable, indica a la infraestructura de WebParts que la propiedad en cuestión tiene que estar accesible a través de su panel de configuración.
  • Personalizable, indica que esta propiedad se puede configurar de forma globa (para todos los usuarios) o de forma particular (por usuario). Para ello, se definen dos ámbitos de personalización: Shared vs User respectivamente.
  • Category, que permite añadir una categoría dentro del panel de configuración en la que se ubicará la nueva propiedad.
  • WebDisplayName, que permite especificar el título para la nueva propiedad a añadir.

Un ejemplo de uso de estos atributos en una WebPart de tipo clásico o visual es el que sigue:

   1: using System;

   2: using System.ComponentModel;

   3: using System.Web;

   4: using System.Web.UI;

   5: using System.Web.UI.WebControls;

   6: using System.Web.UI.WebControls.WebParts;

   7: using Microsoft.SharePoint;

   8: using Microsoft.SharePoint.WebControls;

   9:  

  10: namespace SPLINQWP.SPLINQToSPCRWP

  11: {

  12:     [ToolboxItemAttribute(false)]

  13:     public class SPLINQToSPCRWP : WebPart

  14:     {

  15:         // Visual Studio might automatically update this path when you change the Visual Web Part project item.

  16:         private const string _ascxPath = @"~/_CONTROLTEMPLATES/SPLINQWP/SPLINQToSPCRWP/SPLINQToSPCRWPUserControl.ascx";

  17:  

  18:         [WebBrowsable(true)]

  19:         [Personalizable(PersonalizationScope.Shared)]

  20:         [Category("Datos de configuración adicionales")]

  21:         [WebDisplayName("Configuración adicional")]

  22:         [WebDescription("Propiedad Personalizada adicional")]

  23:         public string sMiPropiedadPersonalizada { get; set; }

  24:  

  25:         protected override void CreateChildControls()

  26:         {

  27:             Control control = Page.LoadControl(_ascxPath);

  28:             Controls.Add(control);

  29:         }

  30:     }

  31: }

Y el resultado en la UI es el siguiente:

image

Publicado por

Juan Carlos González

Juan Carlos es Ingeniero de Telecomunicaciones por la Universidad de Valladolid y Diplomado en Ciencias Empresariales por la Universidad Oberta de Catalunya (UOC). Cuenta con más de 12 años de experiencia en tecnologías y plataformas de Microsoft diversas (SQL Server, Visual Studio, .NET Framework, etc.), aunque su trabajo diario gira en torno a SharePoint & Office 365. Juan Carlos es MVP de Office Servers & Services desde 2015 (anteriormente fue reconocido por Microsoft como MVP de Office 365 y MVP de SharePoint Server desde 2008 hasta 2015), coordinador del grupo de usuarios .NET de Cantabria (Nuberos.Net, www.nuberos.es), co-fundador y coordinador del Grupo de Usuarios de SharePoint de España (SUGES, www.suges.es), así como co-director de la revista gratuita en castellano sobre SharePoint CompartiMOSS (www.compartimoss.com). Hasta la fecha, ha publicado 8 libros sobre SharePoint & Office 365 y varios artículos en castellano y en inglés sobre ambas plataformas.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *