Bu site emekli olmuştur. Arşiv amaçlı olarak
BT AKADEMİ
sponsorluğunda yayın hayatına devam etmektedir.
Ana Sayfa
.net TV
Makaleler
Kaynak Kod
Haberler
Serbest Köşe
Canlı Köşe
Forum
C#nedir?
Ekibimiz
RSS
ADO.NET/SQL
C / Sys Prog.
Genel
Mono ve .NET
Silverlight
XML / Web Serv.
X86 Assembly
C++ / C++.NET
J#.NET / Java
.NET 3.x
UML / Analiz
Yazılım Müh.
ASP.NET
C# / VC#/.NET
Mobil Prog.
PHP 5
YAZAR HAKKINDA
Alper Çiftçi
http://www.csharpnedir.com/
İletişme geçmek için
tıklayın
.
1
Makalesi yayınlanmakta.
Yazar hakkında detaylı bilgi için
tıklayın
.
Yayınlanan diğer makaleleri için
tıklayın
.
İlgili etiketler:
“default.aspx”
“ucont”
durumundayiz.
ekleyelim.
erisebilmek
kontrol
kullanarak
kullanici
loadcontrol
metodunu
myusercontrol
olusturalim
property
submit
textbox
ASP.NET
Alper Çiftçi
YAZI HAKKINDA
Türü
:
Makale
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır.
Bu yazılar editör incelemesine girmeden yayınlanır.
Seviyesi
:
Başlangıç
Kategori
:
ASP.NET
Yayınlanma Tarihi
:
4.7.2005
Okunma Sayısı
:
27184
Yorum Sayısı
:
1
yorum yaz
SİTE İÇİ ARAMA
Üye
GİRİŞİ
Üye girişi için
tıklayın
.
Kullanıcı Adı
Şifre
Beni her zaman hatırla
Bir hafta boyunca kullanıcı bilgilerinizi kullanıcı çıkışı yapana kadar hatırlar. (Paylaşılan bilgisayarlarda önerilmez.)
Şifremi / Kullanıcı Adımı unuttum.
C#nedir? hesabınız yok mu?
Üye olabilmek için
tıklayın
.
Serbest KÖŞE
(?)
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır.
Bu yazılar editör incelemesine girmeden yayınlanır.
Silindi
emre TAŞ
yazının devamı >
silindi
emre TAŞ
yazının devamı >
silindi
emre TAŞ
yazının devamı >
silindi
emre TAŞ
yazının devamı >
silindi
emre TAŞ
yazının devamı >
Bende Yazmak İstiyorum
Blogroll
Turhal Temizer
Conda install environment.yml Package
23.11.2024
Turhal Temizer
Mac OS/X Removing CUDA
23.11.2024
Burak Selim Şenyurt
Rust ile ECS Yaklaşımını Anlamak
23.11.2024
Burak Selim Şenyurt
Birlikte Rust Öğrenelim Serisi
23.11.2024
Diğer Herşey
»
Makaleler RSS
»
Video Gönder
»
Makale Gönder
»
Serbest Köşeye Yazı Gönder
»
Yazar Başvurusu
»
C#nedir? Ekibinde Olmalıyım!
Sponsorlar
Ana Sayfa
/
Makaleler
/
ASP.NET
/
ASP.NET 2.0 da Çalışma Zamanında Eklenen Kullanıcı Kontrolleri
ASP.NET 2.0 da Çalışma Zamanında Eklenen Kullanıcı Kontrolleri
Favorilerime Ekle
Gönderiliyor lütfen bekleyin...
arkadaşıma gönder
Arkadaşınızın email adresi:
*
Mesajınız:
Kullanıcı kontrollerini web formumuza programsal olarak nasıl yükleceğimizi biliyoruz.(Bilmiyorsak da sorun değil, göreceğiz) Peki sayfayı bir şekilde submit ettikten sonra çalışma zamanında eklenmiş olan bu kullanıcı kontrolünün içerdiği kontrollere nasıl erişeceğiz? Bu makalede bu sorunun cevabını bulmaya çalışacağız.
İlk olarak “Default.aspx” isimli formumuzu oluşturalım ve içine bir panel, button, ve label ekleyelim. Daha sonra “MyUserControl.ascx” adlı kullanıcı kontrolünü oluşturalım ve bunun içine de bir label ve textbox ekleyelim. Daha sonra “Default.aspx” sayfasının html kodunun başına (ikinci satıra) aşağıdaki satırı ekleyelim.
<%@ Register TagPrefix="Acme" TagName="MyUserControl1" src="~/MyUserControl.ascx" %>
Bunu eklemezsek “Deafult.aspx.cs” içinde MyUserControl sınıfına ulaşamayız. Bu önemli noktayı belirttikten sonra “MyUserControl.ascx.cs” dosyasını açalım ve daha önce eklediğimiz sayi adlı textbox ın içeriğine erişebilmek için Sayi adlı bir property oluşturalım.
public partial class MyUserControl : System.Web.UI.UserControl
{
public string Sayi
{
set
{
sayi.Text = value;
}
get
{
return sayi.Text;
}
}
}
Aslında ASP.NET 1.1 de textbox ın protected olan özelliğini public yaparak içeriğine erişebiliyorduk. Fakat 2.0 da artık generated kodu göremediğimiz için bu iş için bir property yazmak durumundayız. (Görebilen varsa bildirsin) Bu durum kullanıcı kontrolünde çok fazla kontrol olduğunda ağır bir yük getirse de nesneye dayalı programlama felsefesine aykırı davranmamak açısından anlamlıdır.
Şimdi de Default.aspx.cs dosyamıza dönelim ve Page_Load metodunun içini aşağıdaki şekilde dolduralım.
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
MyUserControl ucont = new MyUserControl();
ucont = (MyUserControl)LoadControl("MyUserControl.ascx");
Panel1.Controls.Add(ucont);
ucont.ID = "ucont";
}
}
Burada ilk olarak MyUserControl sınıfından bir nesne oluşturduk ve buna LoadControl metodunu kullanarak kullanıcı kontrolümüzü yükledik. Daha sonra bunu Panel1’e kontrol olarak ekledik. Bu durumda bu kullanıcı kontrolü panelin içinde görünecektir. Ve son olarak ID sini “ucont” olarak değiştirdik. Bunu daha sonra bu panele kolayca erişebilmek yaptık.
En önemli kısıma geldik. Şimdi de Submit butonuna tıklandığında çalışacak metodu (event handler) aşağıdaki şekilde yazalım.
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
MyUserControl ucont = new MyUserControl();
ucont = (MyUserControl)LoadControl("MyUserControl.ascx");
Panel1.Controls.Add(ucont);
ucont.ID = "ucont";
}
protected void SubmitButton_Click(object sender, EventArgs e)
{
MyUserControl myuc = new MyUserControl();
myuc = (MyUserControl)Panel1.FindControl("ucont");
Output.Text = myuc.Sayi;
}
}
Burada ilk olarak yine bir MyUserControl nesnesi oluşturduk. Ve buna Panel1’in FindControl metodunu kullanarak ve bu metoda parametre olarak daha önce atamış olduğumuz ID değerini girerek gelen kontrolü atadık. Burada daha önce de yaptığımız gibi tip dönüşümü(casting) yapmak durumundayız. Çünkü LoadControl ve FindControl metodları Control nesnesi döndürmektedir. “ucont” ve “myuc” nesnelerini oluştururken de bizim oluşturduğumuz MyUserControl sınıfını kullandık. Burada Control veya UserControl sınıflarını da kullanabilirdik fakat bu sefer propertylerine erişebilmek için yine tip dönüşümü yapmamız gerekecekti. Kolaylık olması açısından kendi sınıfımızı kullanmamız daha mantıklıdır.
Evet artık oluşturduğumuz bu formu çalıştırıp bir sayı değeri girdiğimizde butonun altındaki labelda kullanıcı kontrolündeki alana yazdığımız değer görünecektir.
Anlatılan uygulamayı indirmek için tıklayın.
Makale:
ASP.NET 2.0 da Çalışma Zamanında Eklenen Kullanıcı Kontrolleri ASP.NET Alper Çiftçi
Yazılan Yorumlar
Yorum Yaz
ARA
8
2006
Yasin Sirkecili
/
üye hakkında
TextBox ysirkecili = this.Wuc1.FindControl(TextBox1) as TextBox Label1.Text = ysirkecili.Text
Sayfalar :
1
Yorum yazabilmek için üye girişi yapmalısınız. Üye girişi için
tıklayın
.
Üye değilseniz
Üyel Ol
linkine tıklayarak üyeliğinizi hemen başlatabilirisniz.
Bu Konuda Son 10
Eklenen Son 10
Bu Konuda Geçmiş 10
Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
Son Eklenen 10 Makale Yükleniyor
Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor
Dizayn ve Kodlama
bt
akademi
. Tüm Hakları Saklıdır © Copyright 2002-2009 c#nedir?com
Makaleler
Serbest Köşe
Makale Gönder
.Net TV
Video Gönder
Canlı Köşe
Kaynak Kod
Forum
Haberler
Röportajlar
Anketler
C# Nedir?
İletişim
Site Haritası
RSS
Favorilere Ekle
Üyelik
Hesap Aktivasyon
Ekibimiz
Ekibe Katıl