Tja! Rickard, Andreas, Rickard, TJOHOO!!!!!!!Mer servercontrol utveckling
Jag vill alltså att den som utvecklar i design-läge får en representation av min serverkontroll
endast med ett grafiskt tomt skal, medans när han kompilerat och kör projektet ska den "riktiga"
versionen av serverkontrollen renderas, som gör anrop till SQL etc.
Serverkontrollen renderas med: <b>Protected Overrides Sub CreateChildControls()</b> och inte <b>Render</b>() Och så använder jag <b>EnsureChildControls()</b> överallt (även i serverkontrollens properties)
Hoppas ni förstår mitt problem, än bättre - har en lösning ... Sv: Mer servercontrol utveckling
I din kontroll kan du kontrollera <b>DesignMode</b> för att avgöra om kontrollen är i design-läge eller inte. Detta fungerar för det mesta - behöver man göra lite mer avancerade saker får man gå en lite mer avancerad väg - återkom om du upptäcker att DesignMode inte uppfyller dina behov.Sv:Mer servercontrol utveckling
Hur gör man det ?
Jag har nu läst på lite om Designers.
I Teorin skapar man först sin compositeklass såhär:
<code>
<Designer("AvcTree_Designer")> Public Class AvcTree
'och anger vilken designer som ska användas:
Public Class AvcTree_Designer
inherits System.Web.UI.ControlDesigner
</code>
Problemet är att System.Web.UI.ControlDesigner inte finns ...
Kanske avskaffats med .net frameowkr 1.1 ? Vet inte ... Usch sitter helt fast..Sv: Mer servercontrol utveckling
Den finns (och har alltid funnits =) i <b>System.Web.UI.Design</b> tänk på att du måste ha en referens till <b>System.Design.dll</b>.Sv: Mer servercontrol utveckling
Det funkade utmärkt Andreas, tänkte inte alls på att man var tvungen att manuellt ange
referens till System.Design.DLL.
Koolt, då kan man alltså packa en serverkontroll som en dll, som beter sig
annorlunda beroende på om det är i design eller runtime, och då kan man ju
börja kåda 3'e partskontroller för fullt !
:D :D :D