En iyi yanıtlayıcılar
Dinamik tabloda satır kaybolması

Soru
-
Dinamik olarak bir tablo mevcut. Bu tabloya aşağıda dolduracakları textbox'ın içeriklerinin yeni bir satır olarak eklenmesini istiyorum. İlk satır güzelce çalışıyor fakat başka bir satır eklemek istediğim zaman ilk satırın üstüne yazıyor yani yeni satır eklemiyor.
Çok uğraştım ama sormak durumunda kaldım. Çözüm için fikirlerinizi bekliyorum. Kolay gelsin.
Kodun örnek halini ekledim.
TableRow row; TableCell cell; row = new TableRow(); for (int j = 1; j <= 6; j++) { cell = new TableCell(); TextBox tx = new TextBox(); Label lbl = new Label(); tx.Width = 100; if (j == 1) { tx.ID = "txt_ad" + i.ToString() + "_" + j.ToString(); cell.InnerHtml = "Ad: " + i.ToString(); cell.Controls.Add(tx); } . . . . . row.Cells.Add(cell); } table_mekanlar.Rows.Add(row);
- Düzenleyen Atakan Savaş 28 Ekim 2012 Pazar 09:02
Yanıtlar
-
Hep aynı row'a ekliyorsunuz.
row= new TableRow();
ve
table_mekanlar.Rows.Add(row);
satırlarını for scope'u içine alın
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak Öneren Exe.Cute 28 Ekim 2012 Pazar 13:48
- Yanıt Olarak İşaretleyen Ali Rıza İnceoğlu 2 Kasım 2012 Cuma 07:50
-
Merhaba Atakan Savaş;
Önay YALÇINER 'in demek istediği kod bloğunuzda olası bir hata gözükmüyor sadece Bazı kod parçaları yanlış yerde, Düzeltilmiş hali;
TableRow row; TableCell cell; for (int j = 1; j <= 6; j++) { row = new TableRow(); /*Olması Gereken Yer*/ cell = new TableCell(); TextBox tx = new TextBox(); Label lbl = new Label(); tx.Width = 100; if (j == 1) { tx.ID = "txt_ad" + i.ToString() + "_" + j.ToString(); cell.InnerHtml = "Ad: " + i.ToString(); cell.Controls.Add(tx); } row.Cells.Add(cell); /*Olması Gereken Yer*/ table_mekanlar.Rows.Add(row); /*Olması Gereken Yer*/ }
Jesus Promised The End Of All Wicked People, ODIN Promised The End Of All Ice Giants. I Don't See Many Ice Giants Around... exe[nokta]cute[at]live[nokta]com
- Yanıt Olarak Öneren Önay YALÇINERModerator 28 Ekim 2012 Pazar 13:53
- Yanıt Olarak İşaretleyen Ali Rıza İnceoğlu 2 Kasım 2012 Cuma 07:50
Tüm Yanıtlar
-
Hep aynı row'a ekliyorsunuz.
row= new TableRow();
ve
table_mekanlar.Rows.Add(row);
satırlarını for scope'u içine alın
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak Öneren Exe.Cute 28 Ekim 2012 Pazar 13:48
- Yanıt Olarak İşaretleyen Ali Rıza İnceoğlu 2 Kasım 2012 Cuma 07:50
-
-
-
-
Merhaba Atakan Savaş;
Önay YALÇINER 'in demek istediği kod bloğunuzda olası bir hata gözükmüyor sadece Bazı kod parçaları yanlış yerde, Düzeltilmiş hali;
TableRow row; TableCell cell; for (int j = 1; j <= 6; j++) { row = new TableRow(); /*Olması Gereken Yer*/ cell = new TableCell(); TextBox tx = new TextBox(); Label lbl = new Label(); tx.Width = 100; if (j == 1) { tx.ID = "txt_ad" + i.ToString() + "_" + j.ToString(); cell.InnerHtml = "Ad: " + i.ToString(); cell.Controls.Add(tx); } row.Cells.Add(cell); /*Olması Gereken Yer*/ table_mekanlar.Rows.Add(row); /*Olması Gereken Yer*/ }
Jesus Promised The End Of All Wicked People, ODIN Promised The End Of All Ice Giants. I Don't See Many Ice Giants Around... exe[nokta]cute[at]live[nokta]com
- Yanıt Olarak Öneren Önay YALÇINERModerator 28 Ekim 2012 Pazar 13:53
- Yanıt Olarak İşaretleyen Ali Rıza İnceoğlu 2 Kasım 2012 Cuma 07:50
-
çözüm olarak önerdiğiniz konuyu bilmiyorum, demek istediğim oydu. yani çözümü nasıl gerçekleştireceğim hakkında bir bilgim yok.
Çözümü söylemiştim işte , o iki satırı for içine al. İllede kaynak lazımsa;
http://msdn.microsoft.com/en-us/library/ch45axte(v=vs.71).aspx
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
-
-
Problemimi hallettim, çözüm olarak ;
-
Atakan Savaş: ilk mesajımda sana row u oluşturduğun kodu for içine taşı dedim, sonra execute yazdı verdi, sonra tekrar açıkladık. 3 tane doğru yanıtı görmedin gene bizim dediğimizi bu linkten buldun yaptın.
Öncelikle bu işler ezbere biraz zor olacaktır size önerim C# dilini bir kursa katılarak olmadı, Video ve tutorial izleyerek(msdn.com da bolca var) öğrenmeniz.
Diğer bir konu Bu yaptığınızı generic liste ile yapmanız daha rahat olurdu bunu size önermek istedim ancak 2 satırı for'un içine alamadınız
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com