2014-09-25 119 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