Problem večkratnega nalaganja control

Naredil sem svoj ToolBar na katerega dodajam gube v kodi. Če to naredim v konstruktorju ToolBara se mi potem, ko ga dam na WepPage kreirajo vsi gumbi na ToolBaru. Pri tem pa se mi pojavita dve vprašanji. Zakaj v aspx kodi ne vidim takoj kode za vse gumbe ampak šele, ko spremenim nek Property? Drugo vprašanje je pa povezano s prvim. Ko stran poženem v browserju se mi vsi itemi (gumbi) kreirajo dvakrat. Če pa vse skupaj kličem na OnPreRender (namesto na konstruktorju) pa potem ne vidim designa. Mi lahko kdo razloži kakšen je pravilen postopek?

Lp,

Matjaž

 

Avtor: o-MA-n-tjaz, 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.

bojanv
bojanv - sreda, 24. januar 2007

Prvo vprašanje: za dodajanje dinamično na kontrolo (še posebej, ko delaš z child-reni) je pomembno, da obvestiš parenta, kaj se dogaja z njegovimi "podrejenimi". Uporabi NotifyParent atribut od System.ComponentModel pa bi ti moralo delatu.Drugo vprašanje: zakaj se ti naloži dvakrat, zna biti problem v AutoEventWireUp atributu. Nastavi ga na false in sam izvedi binding eventov z delegati. S tem boš pripomogel, da se ti ne bo izvedla koda dvakrat (ena se izvede v reference tagu, ena pa v normalni kodi...preberi si tale članek pa ti bo jasno....). Postopek je odvisen od tega, v katero smer boš šel. Torej, odloči se za tip kontrole, ali za composite kontrole (ker skupaj skladaš) ali web user kontrole? In slednje, ali želiš design podporo ali ne?