Bu yazımda jQuery Ajax uygulamalarında UserControl'leri etkin olarak nasıl kullanabileceğimizden bahsedeceğim.

jQuery Ajax ile UserControl'leri Etkin Kullanma

Bu yazımda jQuery Ajax uygulamalarında UserControl'leri etkin olarak nasıl kullanabileceğimizden bahsedeceğim. Son dönemde yaptığım birçok işte bu yöntemi kullanıyorum ve oldukça kullanışlı, efektif uygulamalar ortaya çıkmakta. Daha önce birkaç yazımda jQuery Ajax uygulamalarında UserControl'leri nasıl kullanabileceğimizden bahsetmiştim. Bu yöntemleri geliştirerek daha doğrusu UserControl'ü render eden metodu geliştirerek bu kullanma yöntemini daha etkin hale getirdim. Öyleki UserControl'e rahatlıkla çeşitli parametreler aktarabiliyoruz. Bu şekilde çok dinamik, efektif alanlar oluşturabiliriz. Şimdi nasıl yapacağımıza göz atalım.

Öncelikle yazacağımız kodlara göz atalım. Bu kodlar hazırladığım ve yazının devamında linkini bulacağınız örneğin kodlarıdır. 

 

// UserControlü Render Eden Metodumuz
public static string user_kontrol_oku(string adres, Dictionary<string, string> Ozellikler)
{
  Page page = new Page();
  UserControl ctl = (UserControl)page.LoadControl(adres);
  foreach (KeyValuePair<string, string> ozellik in Ozellikler)
  {
    ctl.Attributes.Add(ozellik.Key, ozellik.Value);
  }
  page.Controls.Add(ctl);
  StringWriter writer = new StringWriter();
  HttpContext.Current.Server.Execute(page, writer, false);
  return writer.ToString();
}
// Değerleri Kullanıcıdan Alan ve Render edilen UserControl'ü 
// jQuery Ajax ile Kullanıcıya Aktaracak Webmethod
[System.Web.Services.WebMethod]
public static string Oku(int Sayfa, int Adet)
{
  Dictionary<string, string> veriler = new Dictionary<string, string>();
  veriler.Add("Sayfa", Sayfa.ToString());
  veriler.Add("Adet", Adet.ToString());
  return user_kontrol_oku("~/UserControl1.ascx", veriler);
}
// UserControl
public partial class UserControl1 : System.Web.UI.UserControl
{
  protected void Page_Load(object sender, EventArgs e)
  {
    int Sayfa = int.Parse(Attributes["Sayfa"]);
    int SayfalamaAdeti = int.Parse(Attributes["Adet"]);
    /* Değerlere göre işlem yapılıyor ...*/
  }
}

Görüldüğü gibi kodlarımız böyle.  Örnekte sayfalama var ve sayfalama adeti kullanıcı tarafından belirleniyor. Bu değerleri ise kullandığımız metot ile UserControl'e aktarıyoruz (Attribute özelliği ile) ve dinamik bir uygulama geliştirmiş oluyoruz. Buna benzer olarak birçok alanda bu yöntemi kullanabiliriz. Örneğin filtreleme (arama) işlemlerinde, otomatik tamamlama, dinamik uygulamalarda bu yöntemi kullanarak çok daha efektif alanlar oluşturabiliriz.


İyi Çalışmalar.

İlgili Makaleler

Bu yazıya 0 yorum yapılmış.

Yorum Gönder