This is a migrated thread and some comments may be shown as answers.

Need to access a HyperlinkControl in Radgrid itemdatabound.

3 Answers 193 Views
Grid
This is a migrated thread and some comments may be shown as answers.
shahid Aleem
Top achievements
Rank 1
shahid Aleem asked on 04 Feb 2010, 07:26 PM
In my Source Code file i have a Hyperlink control... Which i want to access and give the url from code behind. I did using the following method but it is giving me error.
Please help me... Its very urgent.

Its throwing an exception.
 
 <telerik:GridTemplateColumn HeaderText="Visit No." UniqueName="VisitNo" DefaultInsertValue=""
                              
                            <ItemTemplate> 
                                <asp:HyperLink ID="lblVisitNo" runat="server" Text='<%#Bind("SiteVisitNo") %>' ></asp:HyperLink> 
                            </ItemTemplate> 
                        </telerik:GridTemplateClumn>


 protected void gvRenewal_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e) 
    { 
        HyperLink lblVisitNo = (HyperLink)e.Item.FindControl("lblVisitNo"); 
        int SiteID = int.Parse(Request.QueryString["SID"]); 
        lblVisitNo.NavigateUrl = "~/Pages/Sites/Management_Sites/Renewal_SiteVisits.aspx?SID=" + SiteID; 
   

3 Answers, 1 is accepted

Sort by
0
Mark Galbreath
Top achievements
Rank 2
answered on 04 Feb 2010, 08:30 PM
What's the exception being thrown and the stack trace?

Cheers!
Mark
0
shahid Aleem
Top achievements
Rank 1
answered on 05 Feb 2010, 07:46 AM
Hello Mark Galbreath
thanks for replying.

its object reference not set to an instance of an object.
at this line.
 lblVisitNo.NavigateUrl = "~/Pages/Sites/Management_Sites/Renewal_SiteVisits.aspx?SID=" + SiteID; 
0
Princy
Top achievements
Rank 2
answered on 05 Feb 2010, 07:56 AM
Hello Shahid,

You would have to differentiate between the various rows in the grid such as grid row, header row, pager row, etc.. Try the following code:
c#:
protected void gvRenewal_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)   
    {   
      if(e.Item is GridDataItem) 
        { 
          GridDataItem dataItem = (GridDataItem)e.Item;  
          HyperLink lblVisitNo = (HyperLink)dataItem.FindControl("lblVisitNo");   
          int SiteID = int.Parse(Request.QueryString["SID"]);   
          lblVisitNo.NavigateUrl = "~/Pages/Sites/Management_Sites/Renewal_SiteVisits.aspx?SID=" + SiteID;  
  
        }  
    }  
 

Thanks
Princy.
Tags
Grid
Asked by
shahid Aleem
Top achievements
Rank 1
Answers by
Mark Galbreath
Top achievements
Rank 2
shahid Aleem
Top achievements
Rank 1
Princy
Top achievements
Rank 2
Share this question
or