2013-02-14 72 views
0

我有3個部分到我的站點,站點主站,用戶控制(站點站點內部)和常規頁面。在頁面前加載用戶控制

當用戶登錄時,他們被重定向到常規頁面。用戶控制是不同帳戶(自動選擇第一個帳戶)的下拉列表,獲取他們的用戶名並運行存儲過程以將他們的信息提取到SiteID會話變量中。

然後在常規頁面中,我將所有標籤設置爲用戶信息。與此代碼。

  if (Session["SiteID"] != null) 
     { 
      SiteID = int.Parse(Session["SiteID"].ToString()); 
      PopulateAccountData(); 
      PopulateAccountInformation2(); 
      PopulateSiteNodes(); 
      PopulateSiteMap(); 
     } 

     else 
     { 
      LabelSiteName.Text = "No Site Selected"; 

     } 

問題是,當頁面加載的第一次它不具備Session["SiteID"],我打刷新一切加載。

我是新來的ASP.net,所以我不知道如果我這樣做是正確的,但我怎麼得到一切加載第一次?

+1

不要讓用戶控件綁定本身'Page_Load'但'DataBind'它從它應該的頁面。這也可以延遲加載控件。該頁面是控制器而不是'UserControl'。因此,在UserControl中提供一個公共方法,您可以從該頁面調用該方法。 – 2013-02-14 14:20:53

回答

0

用途:的IsPostBack

看://www.java-samples.com/showtutorial.php?tutorialid=1083

+0

我不知道如何把它放在回位將解決這個問題。你是說把我的代碼放在上面的ispostback {}中。 usercontrol允許他們選擇不同的賬戶來選擇哪個賬戶進行回發。我想我不會跟着你,對不起。 – Zach 2013-02-14 14:38:00

相關問題