HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Web kontrolt választó web kontrol


Példaprogram letöltése

15265 bájt

Készítsünk most egy olyan web kontrolt, mely képes arra, hogy kiválasztja a megfelelő web kontrolt és csak az jeleníti meg a web oldalon. A kontrolnak megadunk két másik web kontrolt, melyek közül választania kell. A választáshoz azt a feltételt vizsgálja, hogy az adott felhasználó azonosított-e vagy sem. Ezzel a választó web kontrollal olyan esetekben dolgozhatunk hatékonyan, ha bizonyos web kontrolokat csak akkor kell megjeleníteni, ha a felhasználó azonosított, ellenkező esetben egy hibaüzenetet adhatunk a felhasználó felé, melyet a másik web kontrol valósít meg.

Mellékelt példa megnyitása előtt szükséges egy Authenticated nevű virtuális könyvtár létrehozása, mely a példa könyvtárára mutat. Ehhez nyissa meg a mellékelt mappa Tulajdonság ablakát és itt a Webmegosztás lapon engedélyezze a mappa megosztását olvasási és parancsfájlok futtatási jogával.
Készítünk tehát két web kontrolt:
  • TestControl - ennek tartalma csak akkor jelenhet meg, ha a felhasználó azonosított
  • ErrorControl - ennek tartalma akkor jelenik meg, ha a felhasználó még nem jelentkezett be, itt megkérhetjük erre.
E két kontrol közül kell választania az AuthenticatedControl nevű web kontrolunknak.
A kontrol számára a másik két kontrolt megadhatjuk annak Authenticated és Anonymous property-jén keresztül.
Amikor a kontrol tartalmát kell előállítanunk, vagyis amikor a CreateChildControls függvény fut, akkor vizsgáljuk meg, hogy a felhasználó bejelentkezett-e már vagy sem. Ettől függően adjuk hozzá gyerek kontrolként az Authenticated vagy az Anonymous property-ben megadott kontrolt.
    protected override void CreateChildControls()
    {
      if (Page.User.Identity.IsAuthenticated)
      {
        if (authenticated != null)
        {
          Controls.Add(authenticated);
        }
      }
      else
      {
        if (authenticated != null)
        {
          Controls.Add(anonymous);
        }
      }
    }      
Az AuthenticatedControl felhasználása a következő: tegyük a web oldalunknak arra a helyére a kontrolt, ahol szeretnénk megjeleníteni a TestControl-t. Programból rendeljük hozzá a szükséges kontrolokat a megfelelő property-khez:
    private void Page_Load(object sender, System.EventArgs e)
    {
      AuthenticatedControl1.Anonymous = new ErrorControl();
      AuthenticatedControl1.Authenticated = new TestControl();
    }

Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2002 évkönyv 622. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |