Uporaba skinov/tem v lastnih web kontrolah

Zanima me, če je mogoče uporabljati skine/teme v svojih web kontrolah (npr. nekoliko sem razširil GridView) in če se, kako se definirajo v skin datoteki?

Avtor: tomazz, objavljeno na portalu SloDug.si (Arhiv)

Leave a comment

Please note that we won't show your email to others, or use it for sending unwanted emails. We will only use it to render your Gravatar image and to validate you as a real person.

tomazz
tomazz - sreda, 14. junij 2006

Najlepša hvala za odgovor.Nisem vedel, da v skin datoteki lahko uporabiš tudi @Register tag, tako da je sedaj vse O.K.Lep pozdravTomazz

bojanv
bojanv - torek, 13. junij 2006

Skin se uporablja normalno kot za kakšno drugo kontrolo, samo par stvari moraš upoštevat. Prva je,  da napišeš v razredu oziroma kontroli, ki jo deduješ, kaj vse bi rad imel (torej, ForeColor, BackColor, itd.) in izvedeš pač dejansko, kaj naj ti to nardi (torej ForeColor naj bo za ForeColor za celice itd.). Druga stvar je ta, da narediš skin file in na začetku poveš, za katero kontrolo se bo to uporabljalo, torej uporabiš @Register tag. Na primeru spodaj si poglej, kako naj zgleda skin file.Primer:če imamo dedovan razred takole:namespace Bojan.Controls{          public class MyWebControl : GridView         {                ..... // koda         }}v skin file-u pa izgleda stvar takole//registriramo kontrolo //če se ne prevede, moramo povedati točno za kateri assembly gre//z drugo besedo, ce ni v App_Code, napište se kam spada<@Register TagPrefix=BC namespace=Bojan.Controls%><BC:MyWebControl SkinId=whatever ForeColor=Black ... />na page-u pa uporabimo potem normalno, kot vse drugo. Registriramo kontrolo (kot prikazano zgoraj), upiorabimo na primernem mestu, in dodamo ime skin file-a.