Compartir a través de


Agregar receptores de eventos para listas de SharePoint 2010

Pancarta de inicio rápido de SharePoint
Introducción al desarrollo web en SharePoint 2010: Aprenda cómo adjuntar receptores de eventos a las listas de SharePoint 2010.

Última modificación: miércoles, 12 de enero de 2011

Hace referencia a: Office 2010 | SharePoint Foundation 2010 | SharePoint Server 2010 | Visual Studio | Visual Studio 2010

Se aplica a:   Microsoft SharePoint Foundation 2010 | Microsoft SharePoint Server 2010 | Microsoft Visual Studio 2010
Publicado:   junio de 2010
Proporcionado por:    Frank Rice, Microsoft Corporation

En este ejercicio, se agrega un receptor de eventos a una lista personalizada de Microsoft SharePoint 2010 que se desencadena cuando intenta eliminar un elemento de la lista. Para completar esta tarea, debe realizar lo siguiente:

  • Abrir el proyecto de definición de lista

  • Agregar el código de receptor de eventos

  • Probar la solución

Nota

En este ejercicio, se asume que ya creó el proyecto de lista personalizado denominado Bugs en Microsoft Visual Studio 2010. Las instrucciones para crear el proyecto de la definición de lista se encuentran en la nota rápida Crear definiciones de lista personalizadas en SharePoint 2010.

Abrir el proyecto de definición de lista

En esta tarea, se abre el proyecto de definición de lista en Visual Studio 2010.

Para abrir el proyecto de definición de lista

  1. Inicie Visual Studio 2010

  2. En el menú Archivo, elija Abrir y, a continuación, haga clic en Proyecto o solución.

  3. Busque el archivo del proyecto de definición de lista (Bugs.sln) y haga clic en Abrir.

Agregar el código de receptor de eventos

En esta tarea, se crea y se adjunta un receptor de eventos a la definición de lista. Este receptor impide la eliminación de elementos de error y muestra un mensaje.

Para agregar el receptor de eventos a la definición de lista

  1. En el Explorador de soluciones, haga clic con el botón secundario en el nodo Bugs, elija Agregar y, a continuación, haga clic en Nuevo elemento.

  2. En la sección Plantillas instaladas de la ventana de diálogo Nuevo proyecto, haga clic en Visual C#, haga clic en SharePoint y, a continuación, haga clic en  2010.

  3. En los elementos del proyecto, haga clic en Receptor de eventos.

  4. Escriba BugListItemEvent en el cuadro Nombre y, a continuación, haga clic en Agregar.

  5. En el asistente para la personalización de SharePoint, seleccione la opción Un elemento que se va a eliminar y haga clic en Finalizar.

  6. En el Explorador de soluciones, expanda BugListItemEvent y abra el archivo Elements.xml.

  7. Para asegurarse de que el receptor de eventos sólo está enlazado a la lista, el atributo ListTemplateId en el elemento Receivers deberá estar establecido en 10001.

  8. En el Explorador de soluciones, expanda BugListItemEvent y abra BugListItemEvent.cs. Se debe ver el método ItemDeleting reemplazado.

  9. Inserte el siguiente código en el cuerpo del método ItemDeleting después de la instrucción base.ItemDeleting(properties);. Este código impide la eliminación de un elemento y muestra un mensaje de error.

    try
    { 
       properties.Cancel = true;
       properties.ErrorMessage = "Bugs can only be resolved not deleted!";
    }
    catch (Exception ex)
    {
       return;
    }
    finally
    {
       this.EventFiringEnabled = true;
    }
    
  10. En el Explorador de soluciones, haga clic con el botón secundario en el nodo Bugs y haga clic en Implementar. Si recibe un mensaje de error de implementación, haga clic en Resolver automáticamente.

  11. Abra el sitio web que especificó anteriormente.

  12. En la página principal, en el panel de navegación izquierdo, haga clic en la lista Bugs.

  13. En la ficha Herramientas de listas, haga clic en Elementos y, a continuación, en la lista desplegable Nuevo elemento, haga clic en el elemento Error. Se mostrará la pantalla Errores - Nuevo elemento.

  14. Para crear un error, escriba información en los cuadros correspondientes y, a continuación, haga clic en Guardar.

  15. A continuación, intente eliminar el elemento. Debe recibir un mensaje similar al que se muestra en la figura 1.

    Figura 1. Mensaje de error obtenido al intentar eliminar un elemento

    Mensaje de error al intentar eliminar

Probar la solución

En esta tarea, primero se crea un elemento en la lista personalizada y, a continuación, se desencadena el receptor de eventos al tratar de eliminar un elemento.

Para probar la solución

  1. Abra el sitio web especificado en el proyecto de la definición de lista.

  2. En la página principal, en el panel de navegación izquierdo, haga clic en la lista Bugs.

  3. En la ficha Herramientas de listas, haga clic en Elementos y, a continuación, en la lista desplegable Nuevo elemento, haga clic en el elemento Error. Se mostrará la pantalla Errores - Nuevo elemento.

  4. Para crear un error, escriba información en los cuadros correspondientes y, a continuación, haga clic en Guardar.

  5. A continuación, intente eliminar el elemento. Debe recibir un mensaje similar al que se muestra en la figura 1.

Pasos siguientes