2016-03-29 19 views
0

Sayfa başlığı değerini sayfa tarafından ayarlandıktan sonra sayfa başlığı değerini Facebook paylaşım eklentisine iletmem gereken bir gereksinim var. Sayfanın başlığının belirli bir kontrolün PreRender olayına ayarlandığı birkaç sayfa (Dinamik Veri sayfaları) vardır (bunu değiştiremiyorum).İçerik sayfaları oluşturulduktan sonra ana sayfada hangi olay tetiklenir

ben içerik sayfa başlığı geçerseniz Usta sayfa en PreRender o Usta sayfa en PreRender içerik sayfanın kontrolü PreRender önce tetiklenir olarak tanımsız bir değer döndürür. Değeri ana sayfanın Unload etkinliğinde geçirmeyi denedim ama işe yaramadı! Bunu nasıl başarabilirim?

Soru, içerik sayfalarının tüm görevlerini yerine getirdikten ve kaldırmaya hazır olduktan sonra ana sayfada bir şey gerçekleştirmesi olarak özetlenebilir.

Bunu ana sayfanın kendisinde yapmak için bir yol var mı, yoksa bunu tek tek sayfalarda mı yapmalıyım?

Referans: Events in ASP.NET Master and Content Pages

Dinamik Veri Sayfa:

string Location = null; 
protected void DynamicFilter_PreRender(object sender, EventArgs e) 
{ 
    DynamicFilter Filter = (DynamicFilter)sender;  
    MetaColumn metaColumn = table.GetColumn(Filter.DataField);  
    QueryableFilterUserControl fuc1 = Filter.FilterTemplate as ForeignKeyFilter; 

    if (fuc1 != null && fuc1.FilterControl != null) 
    { 
     DropDownList ddl = fuc1.FindControl("DropDownList1") as DropDownList;     
     if (ddl != null) 
     { 
      if (metaColumn.DisplayName == "Location") 
      { 
       if (ddl.SelectedIndex != 0) 
       { 
        Location = ddl.SelectedItem.Text; 
       } 
      } 
     } 
    } 

    if (Location != null) 
    { 
     // set the page title based on the location    
     Page.Title = String.Format("Recent {0} Fares", Location); 
    } 
} 

Bu fonksiyon içerik sayfanın (dinamik veri sayfası) başlığını ayarlar. Artık bu başlığı ana sayfamda ancak ayarlandıktan sonra kullanmam gerekiyor.

Usta Sayfa:

protected void Page_Load(object sender, EventArgs e) 
{ 
    // pass the value of page title to SocialNetworkingHelper class to do some work 
    SocialNetworkingHelper.SetSocialMediaMetaTag(this.Page, this.Page.Title); 
} 
+0

Tam olarak Unload ile çalışmadı? – Andrei

+0

Değeri geçtim ama hiçbir değişiklik yansıtılmadı – ihimv

+0

Hata ayıklamaya çalıştınız mı? Olay işleyicisinin gerçekten çalıştığından emin oldunuz mu? Bu teoride çalışmış olmalı, bu yüzden yaptığınız gibi bir şeylerin yanlış olduğunu düşünüyorum. – Andrei

cevap

1

kullanım sayfa unload olayı burada sayfa başlığını ayarlamak eğer oluşturulmaz ... vb belleği serbest dosyaları kapanış gibi nihai temizleme gerçekleştirmek için .... sen zorunda kontrol prerender olayının başlığını ayarla ...

İlgili konular