Vorgehensweise: Anpassen eines Stellvertretungs-Steuerelements

Letzte Änderung: Freitag, 9. Juli 2010

Gilt für: SharePoint Foundation 2010

Dieses Beispiel zeigt das grundlegende Verfahren zum Erstellen und Implementieren eines Stellvertretungs-Steuerelements. Das Stellvertretungs-Steuerelements befindet sich im AdditionalPageHead-Steuerelement auf der Seite. Es registriert einige ECMAScript (JavaScript, JScript)-Strukturen auf der Seite.

So erstellen Sie das Stellvertretungs-Steuerelement

  1. Starten Sie SharePoint-Entwicklungstools in Microsoft Visual Studio 2010.

  2. Zeigen Sie im Menü Datei auf Neu, und klicken Sie dann auf Projekt.

  3. Wählen Sie in Projekttypen unter Visual Basic oder C# die Option Leeres SharePoint-Projekt aus.

  4. Geben Sie EcmaScriptDelegate als Projektnamen ein. Klicken Sie dann auf OK.

  5. Wählen Sie imAssistenten zum Anpassen von SharePoint die Option Als Farmlösung bereitstellen aus. Klicken Sie auf Fertig stellen.

  6. Klicken Sie im Projektmappen-Explorermit der rechten Maustaste auf das Projekt EcmaScriptDelegate. Wählen Sie Hinzufügen und dann Neues Element aus.

  7. Klicken Sie im Dialogfeld Neues Element hinzufügen, klicken Sie auf die Gruppe Code, und wählen Sie die Vorlage Klasse aus. Geben Sie EcmaScriptDelegateControl im Feld Name ein, und klicken Sie dann auf Hinzufügen.

  8. Anschließend müssen Sie einen Verweis auf System.Web hinzufügen. Klicken Sie im Projektmappen-Explorermit der rechten Maustaste auf den Ordner Verweise, und wählen Sie Verweis hinzufügen aus. Klicken Sie im Dialogfeld Verweis hinzufügen auf die Registerkarte .NET, und suchen Sie in der Liste nach dem Eintrag System.Web. Klicken Sie dann auf OK.

  9. Fügen Sie in der nun angezeigten EcmaScriptDelegateControl-Datei die folgende using-Anweisung hinzu.

    using System.Web.UI.WebControls;
    
    Imports System.Web.UI.WebControls
    
  10. Ändern Sie die Basisklasse von EcmaScriptDelegateControl in WebControl, indem Sie die folgende Zeile ändern.

    class EcmaScriptDelegateControl : WebControl
    
    Public Class EcmaScriptDelegateControl
      Inherits WebControl
    
  11. Setzen Sie die OnLoad-Methode außer Kraft, indem Sie den folgenden Code hinzufügen.

    protected override void OnLoad(EventArgs e)
    {
      base.OnLoad(e);
    }
    
    Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
      MyBase.OnLoad(e)
    End Sub
    
  12. Fügen Sie in der OnLoad-Methode den folgenden Code hinzu, um JavaScript zur Seite hinzuzufügen.

      string helloAlert = "alert('Hello, world!');";
      this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "popup", helloAlert, true);
    
      Dim helloAlert As String = "alert('Hello, world!');"
      Me.Page.ClientScript.RegisterClientScriptBlock(Me.GetType(), "popup", helloAlert, True)
    

Sie haben nun das Stellvertretungs-Steuerelement für das Projekt erstellt. Im nächsten Schritt werden Sie das Feature zum Bereitstellen des Steuerelements erstellen.

So erstellen Sie ein Feature zum Bereitstellen des Steuerelements

  1. Klicken Sie im Projektmappen-Explorermit der rechten Maustaste auf das Projekt EcmaScriptDelegate, und wählen Sie Hinzufügen und dann Neues Element aus.

  2. Wählen Sie im Dialogfeld Neues Element hinzufügen die Vorlage Leeres Element aus, und geben Sie EcmaScriptDelegateFeature im Feld Name ein. Klicken Sie auf Hinzufügen.

  3. Fügen Sie den folgenden XML-Code innerhalb des Elements-Elements ein. Das Id-Attribut identifiziert den Stellvertreter, wo das Steuerelement gerendert wird. Die Attribute ControlAssembly und ControlClass sind steuerelementspezifisch. Weitere Informationen zum Ermitteln des vollständigen Assemblynamens finden Sie unter Gewusst wie: Erstellen eines Tools zum Abrufen des vollständigen Namens einer Assembly.

    <Control Id="AdditionalPageHead" ControlAssembly="EcmaScriptDelegate, Version=1.0.0.0, Culture=neutral, PublicKeyToken=public key token" ControlClass="EcmaScriptDelegate.EcmaScriptDelegateControl">
    

Sie verfügen nun über das Steuerelement und das Feature, das Sie zum Bereitstellen des Steuerelements benötigen. Für Steuerelemente ist ein SafeControl-Eintrag in der Datei web.config erforderlich, um auf der Seite ausgeführt zu werden. Durch das folgende Verfahren wird ein SafeControl-Eintrag für Ihr Steuerelement hinzugefügt.

So fügen Sie einen SafeControl-Eintrag hinzu

  1. Klicken Sie im Projektmappen-Explorerauf EcmaScriptDelegateFeature, und klicken Sie auf ... in der Eigenschaft Einträge für sicheres Steuerelement.

  2. Klicken Sie im Dialogfeld Einträge für sicheres Steuerelement auf Hinzufügen.

  3. Stellen Sie im Feld Eigenschaften sicher, dass die Eigenschaft Namespace den richtigen Wert aufweist. Hierbei handelt es sich um den Namespace Ihres Steuerelements. Stellen Sie auch sicher, dass die Eigenschaft Sicher auf true festgelegt ist. Klicken Sie dann auf OK.

Nachdem der SafeControl-Eintrag hinzugefügt wurde, können Sie die Lösung bereitstellen.

So stellen Sie das Stellvertretungs-Steuerelement bereit und testen es

  1. Drücken Sie F5, um die Lösung auszuführen.

  2. Beim Laden der Seite wird ein Dialogfeld angezeigt, das den Text Hello, world! enthält. Hierbei handelt es sich um das Skript, das durch das Stellvertretungs-Steuerelement zur Seite hinzugefügt wurde.

Siehe auch

Referenz

DelegateControl

Konzepte

Stellvertretungs-Steuerelement (Erstellen von Vorlagen für Steuerelemente)

Stellvertretungs-Steuerelemente