DevTrain Startseite Advanced Developers Conference vom 14.-15. Februar 2011  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren


   Autor: Bernhard Elbl Artikel Drucken
        
Erzeugen eines Login UserControls mit C#

UserControls bieten unter den ASP.NET Webforms eine interressante Möglichkeit um
wiederverwendbare Web UserInterfaces zu erstellen. UserControls werden in einem eigenem Dateiformat gespeichert: *.ascx
Zu beachten ist, das die UserControls keine <html>, <body> oder <form> Tags besitzen dürfen, da diese in den aufrufenden Seiten zu implementieren sind.
In unsrem Beispiel handelt es sich um ein UserControl dass die Grundlage für eine Login Seite darstellt.
Als erstes erzeugen wir uns eine ascx-Datei, die das UserInterface mit ein bischen EventCode enthält.

<script language="C#" runat="server" ID=Script1>

  void Page_Load(Object sender, EventArgs E) {

    if (Page.IsPostBack) {
      MyLabel.Text = "Die UserId ist " + UserId + "<br>";
      MyLabel.Text += "Das Passwort ist " + Password + "<br>";
    }   
  }
  public String BackColor = "white";</P><P></script></P><P><tablestyle="background-color:<%=BackColor%>;font: 10pt  verdana;border-width:1;border-style:solid;border-color:black;" cellspacing=15>
  <tr>
    <td><b>Login: </b></td>
    <td><ASP:TextBox id="User" runat="server"/></td>
  </tr>
  <tr>
    <td><b>Password: </b></td>
    <td><ASP:TextBox id="Pass" TextMode="Password" runat="server"/></td>
  </tr>
  <tr>
    <td></td>
    <td><ASP:Button Text="Go!" runat="server" ID=Button1/></td>
  </tr>
</table>

<asp:Label id="MyLabel" runat="server"/>

In diesem UserControl gibt es zwei InputControls, eines für den Login Namen und eines für das Passwort. Weiterhin gibt es noch ein Label in dem wir uns nach dem Button Event die eingetragenen Werte ausgeben lassen. Dies erreichen wir durch den Page_Load Eventhandler in dem wir abfragen, ob die Seite an den Server zurückgesendet worden ist.
Beim Zurücksenden und erneuten Aufbau der Seite lesen wir die Werte aus und schreiben diese in das LabelControl
Nun haben wir unser eigenes UserControl. Wir können dieses dann in jede beliebige Seite einbinden.
<%@ Page language="C#" autoeventwireup="false" %>
<%@ Register TagPrefix="Tobi" TagName="Login" Src="event_usercontrol.ascx" %>
<html>

<body>
  <form runat="server">
   <Tobi:Login id="MyLogin" runat="server"/>
  </form>
</body>
</html>


In unserem Fall wird die Seite durch die @ Register Direktive includiert und weiter unten im HTML QuellCode durch den Aufruf des Tags <Tobi:Login ...> visualisiert.


DevTrain Camp - Schneller zum .NET 3.5 Developer
 
Verwandte Artikel      Verlinkte Dokumente
    Keine verknüpften Dokumente

  Erfasst am: 06.01.2001
  Gültig bis: 06.05.2001
23 Ratings
Bewertung: 23,5%
schlecht    sehr gut  

 
© Copyright 2007 ppedv AG