bildirgec.org

findcontrol hakkında tüm yazılar

Asp.Net Saklasa Bile Siz Ulaşın

mmacit | 28 December 2009 11:33

Kuşkusuz biz Asp.Net yazılımcılarının en çok canını sıkan konulardan biride repeaterın içine yerleştirdiğimiz kontrollere codebehind dan ulaşamamamız. Bunun sebebi ise repeater, gridview, datalist gibi listeleme yapan kontrollerin asp.net içinde aynı ID ile nesne oluşturmanın çeşitli karışıklıklara sebeb olacağı gerekçesiyle ayrıca ClientID vermesidir. Eğer bu ClientID olmayıp direk ID ile ulaşabilsek örneğin codebehind da repeater içindeki bir label1 nesnesinin Text özelliğine “deneme”yazsak listelenen bütün label1 nesnelerinin Text özelliği “deneme” olacaktı ve buda hiçbir işimize yaramazdı. Peki böyle durumlarda illaki ulaşmamız gerekiyor ne yapmalıyız?

c# asp.net’te Çoklu Statik TextBox’ın Kolay İşlenmesi

admin | 10 February 2009 16:36

örnek fofm
örnek fofm

Eğer resimdeki gibi bir formunuz var ve satırları tek tek kayıt etmeyi planlıyosanız, eminim aşağıdaki kod daha kolay olduğu kadar işinize daha çok yarayacaktır.

TextBoxların içinde yazan kırmızı renkli yazılar o TextBoxların ID’lerini göstermektedir

Eğer MasterPage kullanmıyorsanız;
Gönder butonunun click olayına;

1
2
3
4
5
6
7
8
for (int i = 1 ; i < 10; i++)
{
if (((TextBox)(FindControl("TextBoxad" + i))).Text != "")
{
//yukarıda boş olup olmadığını kontrol ettiğimiz "TextBoxad" ile başlayan ve sonu sırasıyla 1 den 10 a kadar bir sayı ile biten tüm TextBox'ların dolu olduğunu kontrol ettikten sonra, bu alan içerisinde istediğiniz rutini çalıştırabilirsiniz.
Response.Write(((TextBox)(FindControl("TextBoxad" + i))).Text);
}
}