2014-09-25 154 views
0

我正在從Code Behind訪問div,但投擲Null reference exception。我照顧了一些小東西,如Div標記投擲空引用異常

  • 我的方法不是靜態的。
  • 我在訪問divNeedDataSource事件TelerikRadGrid

看我的標記

 <div id="divData" runat="server"> 
    ---- Some static content 
    </div> 
    <div id="divAuth" runat="server" class="auth"> 
    Content 
    </div> 

,我使用它,如下

protected void rgrdFiles_NeedDataSource(object sender, Telerik.Web.UI.GridNeedDataSourceEventArgs e) 
     { 
      try 
      { 
       //Some Logic 
       if (Session["accessCode"] == null) 
       { 
        if (applyRoles == "1") 
        { 
         divAuth.Visible = true; // Error line 
         divData.Visible = false; 
        } 
        else 
        { 
         divAuth.Visible = false; 
         divData.Visible = true; 
        } 
       } 
       else if (Utility.IsAuthenticUser(12, Session["accessCode"].ToString()) || applyRoles == "0") 
       { 
        divAuth.Visible = false; 
        divData.Visible = true; 
       } 
       else 
       { 
        divAuth.Visible = true; 
        divData.Visible = false; 
       } 
      } 
      catch (Exception ex) 
      { 
      } 
} 

什麼時候來的Error Linedebugger然後我看到null當我移動鼠標移到divAuth

+0

請將您已將'div'' divData'分配給'divAuth'的代碼。 – P5Coder 2014-09-25 05:37:59

+0

呵呵..我真的很抱歉:(謝謝指出我的錯誤,其實有兩個'div's。更新的問題。 – Imad 2014-09-25 05:42:44

+0

你可以刪除我的問題,因爲我的問題已解決,我不記得是怎麼回事?所以我不能接受任何答案,也不能發佈我的... :( – Imad 2014-09-25 06:22:25

回答

0

您的HTML中未提及divAuth。也請確保它是runat服務器,並在同一頁(不在母版頁中)。

我想,你不能在數據源事件中訪問div。請在ItemDataBound事件中隱藏並顯示您的div。

+0

M抱歉沒有發佈正確的代碼,編輯過的代碼和'div'在同一頁面上,而不是主頁面 – Imad 2014-09-25 05:43:51

+0

是你的div在網格中或者在網格之外? – 2014-09-25 05:49:50

+0

網格之外.. – Imad 2014-09-25 05:54:38