Hej,
Kort fråga... är det ur minnessynpunkt en dålig ide att placera datakontroller (ex. gridviews) i olika views i en multiview, OM dessa egentligen inte är beroende av varandra för att fungera?
Om jag placerar en kontrollA i view1, och kontrollB i view2, kommer då kontrollA att processas(och lägga beslag på server-minne), även om jag inte aktiverar View1, eller försöker accessa något värde inom den?
Eller, håller asp.net reda på vilken kontroll som används (eller inte) och låter bli att processa icke använda kontroller i "dolda" views?
Kontrollen kommer inte att processas i renderingsfasen, men i övrigt lever den lika mycket som om den inte vore dold, och konsumerar alltså minne och ev. viewstate. Det betyder inte att multiview är dålig, men att man ska agera efter förutsättningarna. T.ex. kan man låta bli att databinda osynliga kontroller och stäng gärna av viewstate i största möjliga mån.
tack för svaret emission.
Men man blir lite funderasam... jag provade att skapa en dropdown, som jag dels populerade med hårdkodade values, och även kopplade till en datakälla. sen placerade jag det i en view.
Utanför multiviewn så placerade jag en label, och en "togglebutton" så att jag kunde välja att visa/dölja viewn med dropdown-listan.
från början var viewn dold, och när jag i labeln skrev ut de olika värdena i dropdownlistan (som var placerad i den dolda viewen) så fick jag bara de "hårdkodade" värdena.
När jag sedan valde att visa vyn, så populerades den med väden ifrån en db, och sen valde jag att dölja vyn igen. Nästa gång som jag ville skriva ut värdena ifrån listan, så skrevs alla värden ut ifrån databasen.
-Alltså, verkar det inte som om kontrollerna databinds förrens de visas för första gången (?!)
(Problemet är ifall jag ska dela upp olika kontroller på flera olika aspx-sidor, eller om jag ska lägga in fler kontroller på samma sidan och bara visa dem efter behov.)
253 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e