webForumDet fria alternativet

Postback och dynamiskt skapade kontroller

.NETur .NET

6 svar · 395 visningar · startad av ptype

ptypeMedlem sedan juni 2002151 inlägg
Frågan#1

Hej hej!

Jag har dynamiskt skapade kontroller; några TextBox:ar och någon CheckBox. Problemet är att kontroller som skapas dynamiskt inte följer med vid PostBack. Ack ack ack. För närvarande ligger dessutom alla kontroller i en HtmlTable, men det spelar ingen större roll för problemet antar jag.

Jag vill spara undan innehållet i kontrollerna. Frågan är dock hur detta ska göras.

Tips/förslag?

Snälla.

ptypeMedlem sedan juni 2002151 inlägg
GrynetMedlem sedan maj 2001329 inlägg
#3

Du är tvungen att skapa alla dynamiska kontroller vid varje ny postback. Om du gör detta kommer den ihåg alla värden etc på kontrollerna.

(det kanske stod i länken, orkade inte läsa så noga = morgon trött)

ptypeMedlem sedan juni 2002151 inlägg
#4

Jepp, det står där. Men nu råkar jag ut för ett annat problem (engelska därför att jag skickat till usenet):

Hello.

I am experiencing the following problem:

My page has a DropDownList. Depending on which choice is selected I
want to create several different dynamic controls, such as TextBoxes
and CheckBoxes.

An interesting article about similar problem is found at URL:

http://groups.google.com/groups?q=dynamically+added+control+postback+ASP.NET&hl=sv&lr=&ie=UTF-8&oe=UTF-8&selm=qt9nY8UxBHA.788%40cpmsftngxa09&rnum=3

I have followed these guidelines and therefore want to create my
controls in OnInit. The DropDownList is also created there. The
problem is, however, that I need to get the DropDownList's
SelectedItem property, which immediately after new-command is not set.
I can access the SelectedItem property from the
DropDownList_SelectedIndexChanged event, but this event does not run
until after the OnInit method, in which I, as mentioned earlier, need
to create my controls.

Moment 22.

How can I solve this problem? Anyone? I code C#.

ptypeMedlem sedan juni 2002151 inlägg
#5

Grynet, vet du om man måste skapa kontrollerna i OnInit?

GrynetMedlem sedan maj 2001329 inlägg
#6

hehe, sitter precis och pluggar på certefiering av .Net och läste presic om OnInit..trista är dock att jag ändå fick bläddra tebax för att kolla vad det stod..nåväl.

I Page_Init åter-skapas alla kontroller och all data hämtas in ifrån Kontrollerna. Så därför kan du inte få ur selectedindex eller någon annan data där där, dessa görs ej tillgängliga förrän vid page_load.

Så som svar så kan du skapa kontroller i Init, men ej läsa ifrån dem. Så ifall du måste läsa av selectedindex för att skapa dynamiska kontroller så får du nog skapa dessa någon annan stans (efter PageLoad), vilket går alldeles utmärkt.

Vet inte om det hjälpte..säg till om du får något bättre svar från usenet.

ptypeMedlem sedan juni 2002151 inlägg
#7

Jag kom inte på ngt annat sätt än att skapa en ny sida och skicka med DropDownListans parameter dit, som QueryString.

Inte så snyggt :( , men det funkar. :)

259 ms totalt · 3 externa anrop · v20260731065814-full.58439ac5
127 ms — hämta forumlista (db)
0 ms — hämta statistik (cache)
256 ms — hämta tråd, inlägg och bilagor (db)