HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Szerkesztési vagy futási időben van-e a kontrol?


Példaprogram letöltése

13293 bájt

Sok esetben más és más tartalmat kell előállítania web kontrolunknak abban az esetben, ha még csak szerkesztési időben vagyunk, vagy akkor, ha már fut a programunk. Ehhez azonban tudnunk kell programból megadnunk a választ erre a kérdésre, annak érdekében, hogy részben más és más kód futhasson e feltételtől függően.

Mellékelt példa megnyitása előtt szükséges egy DesignMode 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.
A mellékelt példában az egyszerűség kedvéért egy olyan web kontrolt készítünk, melynek automatikusan más lesz a háttérszíne, ha a kontrol szerkesztési időben van, mint akkor, amikor az alkalmazásunk már fut.
Ezt a kérdést egyetlen logikai property kiolvasásával dönthetjük el. Kontrol Site property-jének DesignMode property-je tájékoztat bennünket arról, hogy mi is az aktuális helyzet.
    protected override void CreateChildControls()
    {
      try
      {
        b = Site.DesignMode;
      }
      catch
      {
        b = false;
      }
      ...
    }
Felhasználva ezt az értékét, már tetszőlegesen elágaztathatjuk a HTML kód generáltatását több irányba, így teljesül kívánságunk és programból befolyásolhatjuk a kontrolt tulajdonságait, funkcióit attól függően, hogy szerkesztési vagy futási időben vagyunk-e.
    protected override void Render(HtmlTextWriter output)
    {
      EnsureChildControls();
      if (b)
      {
        BackColor = Color.AliceBlue;
      }
      else
      {
        BackColor = Color.DeepPink;
      }
      base.Render(output);
    }

Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2002 évkönyv 625. 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 |