Freigeben über


Erstellen eines Benutzersteuerelements

Zum deklarativen Erstellen eines Benutzersteuerelements können Sie einen HTML- oder Texteditor verwenden. Die deklarative Syntax für Benutzersteuerelemente ist der Syntax sehr ähnlich, die zum Erstellen einer Web Forms-Seite verwendet wird. Die wichtigsten Unterschiede liegen darin, dass Benutzersteuerelemente statt einer @ Page-Direktive eine @ Control-Direktive verwenden und darüber hinaus den Inhalt nicht in die <html>-, <body>- und <form>-Elemente einschließt.

Weitere Informationen über Web Forms-Seiten und ihre Erstellung erhalten Sie unter Einführung in Web Forms-Seiten. Weitere Informationen zum Deklarieren von Benutzersteuerelementen auf Web Forms-Seiten erhalten Sie unter Verwenden eines Benutzersteuerelements in einer Web Forms-Seite.

Ein Benutzersteuerelement kann eine einfache Textdatei sein oder andere ASP.NET-Serversteuerelemente enthalten. Wenn das Benutzersteuerelement und die gehostete Seite Informationen gemeinsam verwenden sollen, können Sie Eigenschaften für das Benutzersteuerelement erstellen.

Im folgenden Verfahren wird ein einfaches Anmeldeformular beschrieben, das Sie auf mehreren Seiten einer Anwendung einbinden können.

So erstellen Sie ein Benutzersteuerelement

  1. Erstellen Sie eine neue Datei, und geben Sie ihr einen Namen mit der Dateierweiterung .ascx.

    Geben Sie Ihrem Benutzersteuerelement beispielsweise den Namen Logonform.ascx.

  2. Erstellen Sie eine @ Control-Direktive am Anfang der Seite, und geben Sie ggf. die Programmiersprache an, die für das Steuerelement verwendet werden soll.

    Das folgende Beispiel zeigt eine @ Control-Direktive für eine Seite, in der Visual Basic .NET als Programmiersprache verwendet wird.

    <%@ Control Language="VB" %>
    

    Hinweis   Wenn Sie eine Webanwendung mit Hilfe von Visual Studio .NET erstellen, müssen sämtliche Seiten und Benutzersteuerelemente in der Anwendung in derselben Programmiersprache vorliegen.

  3. Erstellen Sie die Elemente der Benutzeroberfläche (Steuerelemente), die im Benutzersteuerelement angezeigt werden sollen.

  4. Erstellen Sie Eigenschaften für das Steuerelement, falls das Benutzersteuerelement und die gehostete Seite Informationen gemeinsam verwenden sollen.

    Das folgende Beispiel zeigt ein vollständiges Benutzersteuerelement, das ein Textfeld anzeigt, in das der Benutzer einen Namen eingeben kann, sowie eine Beschriftung, in der der Name angezeigt wird. Das Benutzersteuerelement legt außerdem eine Name-Eigenschaft offen, so dass der Name in der gehosteten Seite festgelegt werden kann.

    <%@ Control Language="VB" %>
    <script runat="server">
    Public Property Name As String
       Get
           Return labelOutput.Text
       End Get
       Set
           textName.Text = Server.HtmlEncode(value)
           labelOutput.Text = Server.HtmlEncode(value)
       End Set
    End Property
    
    Public Sub buttonDisplayName_Click(sender As Object, e As EventArgs)
       labelOutput.Text = textName.Text
    End Sub
    </script>
    
    <table>
        <tbody>
            <tr>
                <td>
                    <b>Enter your name:</b></td>
            </tr>
            <tr>
                <td>
                    <asp:TextBox id="textName" 
                        runat="server">
                    </asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>
                    <asp:button id="buttonDisplayName" 
                       onclick="buttonDisplayName_Click" 
                       runat="server" text="Submit">
                    </asp:button>
                </td>
            </tr>
            <tr>
                <td><b>Hello, 
                     <asp:Label id="labelOutput" 
                         runat="server">
                     </asp:Label>.</b>
                </td>
            </tr>
        </tbody>
    </table>
    
    [C#]
    <%@ Control Language="C#" %>
    <script runat="server">
        public String Name {
            get
            {
                return labelOutput.Text;
            }
            set
            {
                textName.Text = Server.HtmlEncode(value);
                labelOutput.Text = Server.HtmlEncode(value);
            }
        }
    
        void buttonDisplayName_Click(object sender, EventArgs e) {
           labelOutput.Text = textName.Text;
        }
    </script>
    
    <table>
        <tbody>
            <tr>
                <td>
                    <b>Enter your name:</b></td>
            </tr>
            <tr>
                <td>
                    <asp:TextBox id="textName" 
                        runat="server">
                    </asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>
                    <asp:button id="buttonDisplayName" 
                       onclick="buttonDisplayName_Click" 
                       runat="server" text="Submit">
                    </asp:button>
                </td>
            </tr>
            <tr>
                <td><b>Hello, 
                     <asp:Label id="labelOutput" 
                         runat="server">
                     </asp:Label>.</b>
                </td>
            </tr>
        </tbody>
    </table>
    
    

Informationen dazu, wie Sie das Benutzersteuerelement einer ASP.NET-Webseite hinzufügen, finden Sie unter Verwenden eines Benutzersteuerelements in einer Web Forms-Seite.

Siehe auch

Benutzersteuerelemente für Web Forms | Verwenden eines Benutzersteuerelements in einer Web Forms-Seite | Serverereignisbehandlung in Web Forms-Seiten