SharePoint 2010: Como usar la Content by Query WebPart dentro de otra WebPart!

Como ya he comentado en algún que otro artículo como por ejemplo este artículo, podemos usar WebParts por defecto como controles dentro de las WebParts que desarrollemos de manera que por ejemplo podemos usar una Content By Query WebPart (CBQWP) dentro de una WebPart:

  • Creamos un proyecto de SharePoint de tipo vacío y le agregamos un elemento de tipo WebPart (vamos, una WebPart de tipo clásico).
  • Hay que añadir una referencia a Microsoft.SharePoint.Publishing.
  • Añadiremos una directiva using a Microsoft.SharePoint.Publishing en el código de la WebPart.
  • El código de la WebPart que usa la Content By Query WebPart como un control podría ser:
   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: //Namespaces needed

  11: using Microsoft.SharePoint.Publishing.WebControls;

  12:  

  13: namespace SPCQWPDemo.CBWPUse

  14: {

  15:     [ToolboxItemAttribute(false)]

  16:     public class CBWPUse : WebPart

  17:     {

  18:         protected override void CreateChildControls()

  19:         {

  20:             SPWeb spwWeb=SPContext.Current.Web;

  21:             SPList splLista = spwWeb.Lists["Empresas"];

  22:             ContentByQueryWebPart cbqWebPart = 

  23:                 new ContentByQueryWebPart();            

  24:             cbqWebPart.Title = "Custom Content Query WebPart";

  25:             cbqWebPart.WebUrl = spwWeb.ServerRelativeUrl;

  26:             cbqWebPart.ListName=splLista.Title;

  27:             cbqWebPart.ListId = splLista.ID;            

  28:             cbqWebPart.CommonViewFields = "Título,Text";

  29:             this.Controls.Add(cbqWebPart);

  30:         }

  31:     }

  32: }

  • Nos aseguramos de que en el sitio en el que despleguemos la WebPart creada cuenta con las Features de Publishing (a nivel de colección) y a nivel de sitio se encuentran activadas.
  • Desplegamos la WebPart y comprobamos que se muestra como se esperaba.

image

Y hasta aquí, llega este post sobre como usar la CBQWP en una WebPart personalizada.

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 *