none
Webuserform'dan değişken veya fonksiyon çekebilme RRS feed

  • Genel Tartışma

  • Merhaba,



    Default.aspx;

    --------------------------------
    <% string degisken1 = "WebUserControl2.ascx";
    Control test = Page.LoadControl(degisken1);        
    PropertyInfo ozellik = test.GetType().GetProperty("Gelen1");
    ozellik.SetValue(test, "tuncay", null);
    PlaceHolder1.Controls.Add(test); %>
    
    <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
    
    WebUserControl2.ascx
    --------------------------------
    <% public string Gelen1
    {
         get { return lblGelen1.Text; }
         set { lblGelen1.Text = value; }
    } %>
    <asp:Label ID="lblGelen1" runat="server" />
    


    ------------------------------------------------------------------------------------------------------------------
    Basit olarak ascx deki değeri setvalue ile bilgi atayabiliyorum fakat ascx ten getvalue ile değişken, bilgi veya fonksiyon çekebilmem lazım nasıl çözerim sizce?


    Kaynağı kapalı bir sayfaya(projeye) WebUserControl ekleyip bir sorgu sonucunda en basit haliyle true false döndürmek istiyorum. Kaynak kapalı olduğu için bunu harici bir sayfada yapmam lazım. 
    Visual Studio ile direk ftp ye bağlanıp işlem yaptığım için WebServisi veya Class ı sağlıklı bir şekilde değerlendiremiyorum namespace istediği için. 

    En azından bir şekilde sayfaya müdahale edip true false döndürebilmem lazım nasıl bir yol izleyebilirim ?


    11 Şubat 2014 Salı 07:50

Tüm Yanıtlar

  • Yolu biraz uzatmışsınız;

    <% 
    WebUserControl2 test = (WebUserControl2)Page.LoadControl("WebUserControl2.ascx");        
    test.Gelen1 = "tuncay";
    PlaceHolder1.Controls.Add(test); 
    
    .
    .
    string veri = test.Gelen1;
    %>

    şeklinde set edip read yapabilirsiniz. Methodu varsa da test.Methodum(p1, p2) gibi çağırabilirsiniz.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    11 Şubat 2014 Salı 08:22
    Moderatör
  • İlginiz için teşekkür ederim fakat şöyle bir durum var local de sıkıntı yok kendime bir proje açıp hem uzun yolla hemde belirttiğiniz kısa yolla sıkıntısız aşıyorum konuyu ama;

    - Visual studio ile direk ftp ye bağlanıp WebUserControl ekleyebiliyorum çünkü bir eticaret sitesi ve kaynak kapalı dolayısıyla WebUserControl u belirttiğiniz yolla tanıtamıyorum.

    Nasıl bir yol izlesem daha mantıklı sizce?

    Mesela ürün detay sayfasında webusercontrol ü ekleyip kod bölümüne ulaşmadan yukarıdaki uzun yolu kullanarak ürün id yi gönderiyorum ve kategoriyi sayfaya yazdırabiliyorum ama ben o kategoriler bana geri dönsün istiyorum sayfaya yazılmasın. Sonuç olarak sorgu yaptırıp true false bile olsa kabul edilebilir bir geri dönüş istiyorum :)
    11 Şubat 2014 Salı 08:29
  • ...

    ben ne yapmak istediğinizi anlamadım. Anlayan arkadaşlar yardımcı olacaktır.


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    11 Şubat 2014 Salı 09:11
    Moderatör
  • string degisken1 = "WebUserControl2.ascx";
    Control test = Page.LoadControl(degisken1);
    string gel = test.GetType().GetProperty("yazbakim").GetValue(test, null).ToString();
    gelLbl.Text = gel;

    Niyetim şuydu;

    Mevcut .aspx sayfasında metot yazamadığım için .ascx sayfası oluşturup metot yazdım ve geri dönüş değeri almak istedim. Bu şekilde projede kaynak kodu kapalı olmasına karşın istediğim gibi ek fonksiyonlar yazabilecektim ki yukarıda ki kod ile geri dönüş alabildim. Umarım bu tarz soru işareti olan biri denk gelir ve yararlı olur konu :) İlginiz için çok teşekkür ederim.

    * Not: "yazbakim" metodum.

    11 Şubat 2014 Salı 09:21