Gewusst wie: Erstellen eines Ereignisempfängers

Ereignisempfänger sind Klassen, die es Ihnen ermöglichen, auf Ereignisse zu reagieren, die für SharePoint-Elemente wie Listen oder Listenelemente auftreten. Wenn der Kalender geändert oder ein Name aus der Kontaktliste gelöscht wird, wird der Code im Ereignisempfänger ausgelöst.

In dieser Vorgehensweise werden folgende Aufgaben veranschaulicht:

  • Hinzufügen eines Ereignisempfängers zu einer Listeninstanz.

Für die Ausführung dieser Schritte benötigen Sie die folgenden Komponenten:

Außerdem müssen Sie das Verfahren im Thema Exemplarische Vorgehensweise: Erstellen benutzerdefinierter Felder, Inhaltstypen, Listendefinitionen und Listeninstanzen durchführen.

Hinzufügen eines Ereignisempfängers

Das Projekt, das Sie in Exemplarische Vorgehensweise: Erstellen benutzerdefinierter Felder, Inhaltstypen, Listendefinitionen und Listeninstanzen erstellt haben, schließt ein benutzerdefiniertes Feld, eine benutzerdefinierte Listendefinition mit einer Instanz dieser Liste und einen Inhaltstyp ein. Dann fügen Sie dem Projekt einen Ereignisempfänger hinzu. Im folgenden Verfahren wird der Listeninstanz ein einfacher Ereignishandler (ein Ereignisempfänger) hinzugefügt.

So fügen Sie der Listeninstanz einen Ereignisempfänger hinzu

  1. Öffnen Sie das Projekt, das Sie in Exemplarische Vorgehensweise: Erstellen benutzerdefinierter Felder, Inhaltstypen, Listendefinitionen und Listeninstanzen erstellt haben.

  2. Fügen Sie diesem Projekt einen Ereignisempfänger hinzu. Klicken Sie hierfür im Projektmappen-Explorer auf den Projektnoten, und wählen Sie dann im Menü Projekt die Option Neues Element hinzufügen aus.

  3. Erweitern Sie unter Visual C# oder Visual Basic den Knoten SharePoint, und klicken Sie dann auf 2010.

  4. Wählen Sie im Bereich Vorlagen die Option Ereignisempfänger aus, und geben Sie den Namen "TestEventReceiver1" ein.

    Der Assistent zum Anpassen von SharePoint wird angezeigt.

  5. Wählen Sie auf der Seite Ereignisempfängereinstellungen auswählen die Option Listenelementereignisse als Ereignisempfängertyp aus.

  6. Legen Sie das Ereignisquellelement auf CustomField1 - ListDefinition1 fest.

  7. Aktivieren Sie in der Liste der zu behandelnden Ereignisse das Kontrollkästchen neben Ein Element wurde hinzugefügt, und klicken Sie dann auf Fertig stellen.

  8. Die Codedatei des neuen Ereignisempfängers enthält eine einzelne Methode namens ItemAdded. Fügen Sie dieser Methode Code hinzu, damit bei jedem Hinzufügen eines Kontakts zur Kontaktliste der Standardwert "Scott Brown" für Patient Name verwendet wird. Ersetzen Sie dazu die vorhandene ItemAdded-Methode durch Folgendes:

    Public Overrides Sub ItemAdded(ByVal properties As SPItemEventProperties)
        properties.ListItem("Patient Name") = "Scott Brown"
        properties.ListItem.Update()
        MyBase.ItemAdded(properties)
    End Sub
    
    public override void ItemAdded(SPItemEventProperties properties)
    {
        properties.ListItem["Patient Name"] = "Scott Brown";
        properties.ListItem.Update();
        base.ItemAdded(properties);
    }
    
  9. Drücken Sie F5, um den Code auszuführen und die SharePoint-Website im Webbrowser anzuzeigen.

  10. Klicken Sie auf der Schnellstartleiste auf CustomField1 - ListInstance1.

    Dies ist die Listeninstanz für die Listendefinition. Beachten Sie, dass das Feld Patient Name in der Listeninstanz noch nicht als Spalte angezeigt wird.

  11. Klicken Sie am oberen Rand der Seite auf der Registerkarte Listentools auf Liste, und klicken Sie dann im Menüband auf die Schaltfläche Ansicht ändern.

  12. Wählen Sie in der Liste der verfügbaren Spaltennamen Patient Name aus, und klicken Sie dann auf OK. Beachten Sie, dass das Feld Patient Name jetzt in der Listeninstanz angezeigt wird.

  13. Klicken Sie am oberen Rand der Seite auf der Registerkarte Listentools auf Elemente und dann auf die Schaltfläche Neues Element, um das Dateneingabeformular anzuzeigen.

  14. Geben Sie Daten in den Feldern ein, und klicken Sie dann im Dialogfeld für neue Elemente der Listeninstanz auf die Schaltfläche Speichern.

    Die Spalte Patient Name wird automatisch mit "Scott Brown" aufgefüllt, nachdem Sie auf OK geklickt haben.

Siehe auch

Weitere Ressourcen

Entwickeln von SharePoint-Lösungen