5 Answers, 1 is accepted
0
Accepted
Princy
Top achievements
Rank 2
answered on 09 Oct 2012, 09:02 AM
Hi,
Try the following code to pass the key value.
C#:
Thanks,
Princy.
Try the following code to pass the key value.
C#:
protected void RadGrid2_ItemDataBound(object sender, GridItemEventArgs e){ if (e.Item is GridDataItem) { GridDataItem item = (GridDataItem)e.Item; HyperLink link = (HyperLink)item["UniqueName"].Controls[0]; string value = item.GetDataKeyValue("ID").ToString(); link.NavigateUrl = "Page.aspx?key=" + value; }}Thanks,
Princy.
0
Robert
Top achievements
Rank 1
answered on 09 Oct 2012, 09:17 AM
Prefect, thanks a bunch!
0
Muhammad
Top achievements
Rank 1
answered on 03 Jul 2013, 09:37 AM
Hi,
I'm having a similar issue. I'm using Telerik RadGrid in Asp.Net MVC pattern. I tried the above code behind but error occurring at
of type System.NullReference Exception. Complete code is as follows:
Any help will be highly appreciated.
Thanks
Ovais
I'm having a similar issue. I'm using Telerik RadGrid in Asp.Net MVC pattern. I tried the above code behind but error occurring at
string value = item.GetDataKeyValue("ID").ToString();of type System.NullReference Exception. Complete code is as follows:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<WeBOC.DAL.Vessel>>" %><%@ Register assembly="Telerik.Web.UI" namespace="Telerik.Web.UI" tagprefix="telerik" %><script runat="server"> protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e) { RadGrid1.DataSource = ViewData["Vessels"]; } protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item is GridDataItem) { GridDataItem item = (GridDataItem)e.Item; HyperLink link = (HyperLink)item["VirColumn"].Controls[0]; string value = item.GetDataKeyValue("ID").ToString(); link.NavigateUrl = Url.Action("Inspector", "Vessel", value); } }</script><asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> Index</asp:Content><asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <form id="form3"> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadGrid1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadGrid1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <h2>Vessels<telerik:RadScriptManager ID="RadScriptManager1" Runat="server"> </telerik:RadScriptManager> </h2> <telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" CellSpacing="0" GridLines="None" Skin="WebBlue" onneeddatasource="RadGrid1_NeedDataSource" AllowPaging="True" PagerStyle-Mode="NextPrevNumericAndAdvanced" onitemdatabound="RadGrid1_ItemDataBound" > <MasterTableView><CommandItemSettings ExportToPdfText="Export to PDF"></CommandItemSettings><RowIndicatorColumn Visible="True" FilterControlAltText="Filter RowIndicator column"></RowIndicatorColumn><ExpandCollapseColumn Visible="True" FilterControlAltText="Filter ExpandColumn column"></ExpandCollapseColumn> <Columns> <telerik:GridBoundColumn DataField="INBOUND_VOY_NO" HeaderText="I/B Voyage" /> <telerik:GridBoundColumn DataField="OUTBOUND_VOY_NO" HeaderText="O/B Voyage" /> <telerik:GridBoundColumn DataField="VESSEL_NAME" HeaderText="Vessel Name" /> <telerik:GridBoundColumn DataField="ARRIVAL_DATE" HeaderText="Arrived" /> <telerik:GridBoundColumn DataField="STATE" HeaderText="Phase" /> <telerik:GridHyperLinkColumn AllowSorting="False" DataNavigateUrlFields ="ID" DataTextField = "VIR_NO" FilterControlAltText="Filter column column" UniqueName="VirColumn"> </telerik:GridHyperLinkColumn> </Columns> <EditFormSettings><EditColumn FilterControlAltText="Filter EditCommandColumn column"></EditColumn></EditFormSettings><PagerStyle PageSizeControlType="RadComboBox"></PagerStyle> </MasterTableView><PagerStyle PageSizeControlType="RadComboBox"></PagerStyle><FilterMenu EnableImageSprites="False"></FilterMenu> </telerik:RadGrid> </form></asp:Content>Any help will be highly appreciated.
Thanks
Ovais
0
Muhammad
Top achievements
Rank 1
answered on 03 Jul 2013, 09:48 AM
Hi all,
I have found a solution without using code behind. Here is the chunk of code that i corrected:
I have found a solution without using code behind. Here is the chunk of code that i corrected:
<Columns> <telerik:GridTemplateColumn FilterControlAltText="Filter TemplateColumn column" UniqueName="VIRTemplate"> <ItemTemplate> <asp:HyperLink ID="HyperLink1" runat="server" Text='<%# Eval("VIR_NO") %>' NavigateUrl='<%# Url.Action("Inspector", "Vessel", new{id=Eval("VSSL_CALL_ID")}) %>' /> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridBoundColumn DataField="INBOUND_VOY_NO" HeaderText="I/B Voyage" /> <telerik:GridBoundColumn DataField="OUTBOUND_VOY_NO" HeaderText="O/B Voyage" /> <telerik:GridBoundColumn DataField="VESSEL_NAME" HeaderText="Vessel Name" /> <telerik:GridBoundColumn DataField="ARRIVAL_DATE" HeaderText="Arrived" /> <telerik:GridBoundColumn DataField="STATE" HeaderText="Phase" /> <telerik:GridHyperLinkColumn AllowSorting="False" DataNavigateUrlFields ="VSSL_CALL_ID" DataTextField = "VIR_NO" FilterControlAltText="Filter column column" UniqueName="VirColumn"> </telerik:GridHyperLinkColumn> </Columns>0
Princy
Top achievements
Rank 2
answered on 03 Jul 2013, 09:57 AM
Hi ,
The following error occurred because you haven't set the DataKeyNames value property in the mastertableview for the radgrid.
ASPX:
Thanks,
Princy
The following error occurred because you haven't set the DataKeyNames value property in the mastertableview for the radgrid.
ASPX:
<MasterTableView DataKeyNames="ID">Thanks,
Princy