How do i add autonumber to the RadGrid.
i can do in grid like this
<asp:TemplateField SortExpression="displayedname">
<HeaderTemplate>
Rec #</HeaderTemplate>
<ItemTemplate>
<%#Container.DataItemIndex+1%></ItemTemplate>
</asp:TemplateField>
how do i add in radgrid.
i can do in grid like this
<asp:TemplateField SortExpression="displayedname">
<HeaderTemplate>
Rec #</HeaderTemplate>
<ItemTemplate>
<%#Container.DataItemIndex+1%></ItemTemplate>
</asp:TemplateField>
how do i add in radgrid.
9 Answers, 1 is accepted
0

Shinu
Top achievements
Rank 2
answered on 19 Aug 2009, 04:06 AM
Hi Rajiv,
Go through the following help artcie which explains how to add row numbers in RadGrid.
Adding row numbers
Thanks
Shinu
Go through the following help artcie which explains how to add row numbers in RadGrid.
Adding row numbers
Thanks
Shinu
0

CoolAggie
Top achievements
Rank 1
answered on 19 Aug 2009, 05:01 PM
I am still not able to get the row number
this is my code
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim clientid As Integer, programid As Integer
clientid = Request.QueryString("clientid")
programid = Request.QueryString("programid")
Dim ReportingDataContext As New ReportingDataContext()
radgrid1.DataSource = ReportingDataContext.spGetReports_new(programid, clientid)
radgrid1.DataBind()
End Sub
Protected Sub RadGrid1_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles radgrid1.ItemDataBound
Dim ReportingDataContext As New ReportingDataContext()
If (TypeOf e.Item Is Telerik.Web.UI.GridDataItem AndAlso e.Item.OwnerTableView.DataSourceID = "ReportingDataContext") Then
Dim lbl As Label = CType(e.Item.FindControl("numberLabel"), Label)
lbl.Text = e.Item.ItemIndex + 1
End If
End Sub
<telerik:RadGrid ID="radgrid1" runat="server" AllowPaging="True" AllowSorting="True"
GridLines="None" AutoGenerateColumns="False">
<MasterTableView>
<RowIndicatorColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</RowIndicatorColumn>
<ExpandCollapseColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</ExpandCollapseColumn>
<Columns>
<telerik:GridTemplateColumn UniqueName="TemplateColumn" HeaderText="Rec">
<ItemTemplate>
<asp:Label ID="numberLabel" runat="server" Width="30px" />
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="displayedname" HeaderText="Report Name" SortExpression="displayedname"
UniqueName="displayedname" />
<telerik:GridHyperLinkColumn DataNavigateUrlFields="reportid" SortExpression="displayedname" HeaderText="Report Name"
UniqueName="displayedname" DataNavigateUrlFormatString="ShowGetReports.aspx?reportid={0}"
DataTextField="displayedname">
</telerik:GridHyperLinkColumn>
<telerik:GridImageColumn DataImageUrlFields="ReportType"
HeaderText="Report Type" ImageHeight="" ImageWidth="" UniqueName="column">
</telerik:GridImageColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
this is my code
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim clientid As Integer, programid As Integer
clientid = Request.QueryString("clientid")
programid = Request.QueryString("programid")
Dim ReportingDataContext As New ReportingDataContext()
radgrid1.DataSource = ReportingDataContext.spGetReports_new(programid, clientid)
radgrid1.DataBind()
End Sub
Protected Sub RadGrid1_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles radgrid1.ItemDataBound
Dim ReportingDataContext As New ReportingDataContext()
If (TypeOf e.Item Is Telerik.Web.UI.GridDataItem AndAlso e.Item.OwnerTableView.DataSourceID = "ReportingDataContext") Then
Dim lbl As Label = CType(e.Item.FindControl("numberLabel"), Label)
lbl.Text = e.Item.ItemIndex + 1
End If
End Sub
<telerik:RadGrid ID="radgrid1" runat="server" AllowPaging="True" AllowSorting="True"
GridLines="None" AutoGenerateColumns="False">
<MasterTableView>
<RowIndicatorColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</RowIndicatorColumn>
<ExpandCollapseColumn>
<HeaderStyle Width="20px"></HeaderStyle>
</ExpandCollapseColumn>
<Columns>
<telerik:GridTemplateColumn UniqueName="TemplateColumn" HeaderText="Rec">
<ItemTemplate>
<asp:Label ID="numberLabel" runat="server" Width="30px" />
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="displayedname" HeaderText="Report Name" SortExpression="displayedname"
UniqueName="displayedname" />
<telerik:GridHyperLinkColumn DataNavigateUrlFields="reportid" SortExpression="displayedname" HeaderText="Report Name"
UniqueName="displayedname" DataNavigateUrlFormatString="ShowGetReports.aspx?reportid={0}"
DataTextField="displayedname">
</telerik:GridHyperLinkColumn>
<telerik:GridImageColumn DataImageUrlFields="ReportType"
HeaderText="Report Type" ImageHeight="" ImageWidth="" UniqueName="column">
</telerik:GridImageColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
0

Shinu
Top achievements
Rank 2
answered on 20 Aug 2009, 04:50 AM
Hi Rajeev,
I can't see that you attached the ItemDataBound event to RadGrid in ASPX. Add the ItemDataBound event to RadGrid and put a breakpoint to see whether the event fires correctly or not.
ASPX:
-Shinu.
I can't see that you attached the ItemDataBound event to RadGrid in ASPX. Add the ItemDataBound event to RadGrid and put a breakpoint to see whether the event fires correctly or not.
ASPX:
<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1" OnItemDataBound="RadGrid1_ItemDataBound"> |
<MasterTableView DataSourceID="SqlDataSource1"> |
<Columns> |
. . . |
</Columns> |
</MasterTableView> |
</telerik:RadGrid> |
-Shinu.
0

CoolAggie
Top achievements
Rank 1
answered on 25 Aug 2009, 06:15 PM
I think i figured it out thanks
0

Babuji
Top achievements
Rank 1
answered on 04 Feb 2010, 03:17 AM
Hi,
Try this one
<telerik:RadGrid ID="gvRequests" runat="server" DataSourceID="ObjectDataSource1" PageSize="20" GridLines="None" AllowPaging="True" AllowSorting="True" OnItemDataBound="gvRequests_ItemDataBound">
<MasterTableView AutoGenerateColumns="False" DataSourceID="ObjectDataSource1" DataKeyNames="Id"
CommandItemDisplay="TopAndBottom" OverrideDataSourceControlSorting="true">
<Columns>
<telerik:GridTemplateColumn HeaderText="Sl.No" UniqueName="SlNo">
<ItemTemplate>
<asp:Label ID="lblSn" runat="server" />
</ItemTemplate>
</telerik:GridTemplateColumn>
</columns>
</MasterTableView>
</telerik:RadGrid>
Code Behind
protected void gvRequests_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridDataItem){
int strIndex = gvRequests.MasterTableView.CurrentPageIndex;
Label lbl = e.Item.FindControl("lblSn") as Label;
lbl.Text = Convert.ToString((strIndex * gvRequests.PageCount) + e.Item.ItemIndex + 1);
}
}
Try this one
<telerik:RadGrid ID="gvRequests" runat="server" DataSourceID="ObjectDataSource1" PageSize="20" GridLines="None" AllowPaging="True" AllowSorting="True" OnItemDataBound="gvRequests_ItemDataBound">
<MasterTableView AutoGenerateColumns="False" DataSourceID="ObjectDataSource1" DataKeyNames="Id"
CommandItemDisplay="TopAndBottom" OverrideDataSourceControlSorting="true">
<Columns>
<telerik:GridTemplateColumn HeaderText="Sl.No" UniqueName="SlNo">
<ItemTemplate>
<asp:Label ID="lblSn" runat="server" />
</ItemTemplate>
</telerik:GridTemplateColumn>
</columns>
</MasterTableView>
</telerik:RadGrid>
Code Behind
protected void gvRequests_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridDataItem){
int strIndex = gvRequests.MasterTableView.CurrentPageIndex;
Label lbl = e.Item.FindControl("lblSn") as Label;
lbl.Text = Convert.ToString((strIndex * gvRequests.PageCount) + e.Item.ItemIndex + 1);
}
}
0

surya murthy
Top achievements
Rank 1
answered on 21 Oct 2010, 01:05 PM
In Design..
<telerik:RadGrid ID="RadGridViewJobs" runat="server" AllowPaging="True"
AllowSorting="true" PageSize="5" AutoGenerateColumns="False" GridLines="None" Width="640px" PagerStyle-AlwaysVisible="true"
Skin="Vista">
<MasterTableView DataKeyNames ="C001_JRSId,C077_JRSType" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Sl.No" UniqueName="SlNo">
<ItemTemplate>
<asp:Label ID="lblSn" runat="server" />
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Category" SortExpression = "C002_PositionTypeName" HeaderStyle-Width="160px">
<ItemTemplate >
<asp:Label ID="lblverticalName" runat="server" Text='<%# Eval("C002_PositionTypeName") %>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="160px"/>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
In coding..
Private Sub RadGridViewJobs_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles RadGridViewJobs.ItemDataBound
Dim i As Integer
If (TypeOf e.Item Is GridDataItem) Then
Dim lbl As Label = CType(e.Item.FindControl("lblSn"), Label)
If RadGridViewJobs.MasterTableView.CurrentPageIndex = 0 Then
i = RadGridViewJobs.MasterTableView.PageSize * RadGridViewJobs.MasterTableView.CurrentPageIndex
lbl.Text = (e.Item.ItemIndex + 1).ToString
ElseIf RadGridViewJobs.MasterTableView.CurrentPageIndex > 0 Then
i = RadGridViewJobs.MasterTableView.PageSize * RadGridViewJobs.MasterTableView.CurrentPageIndex
lbl.Text = (e.Item.ItemIndex + 1 + i).ToString
End If
End If
End Sub
Regards
Surya Murthy
<telerik:RadGrid ID="RadGridViewJobs" runat="server" AllowPaging="True"
AllowSorting="true" PageSize="5" AutoGenerateColumns="False" GridLines="None" Width="640px" PagerStyle-AlwaysVisible="true"
Skin="Vista">
<MasterTableView DataKeyNames ="C001_JRSId,C077_JRSType" >
<Columns>
<telerik:GridTemplateColumn HeaderText="Sl.No" UniqueName="SlNo">
<ItemTemplate>
<asp:Label ID="lblSn" runat="server" />
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Category" SortExpression = "C002_PositionTypeName" HeaderStyle-Width="160px">
<ItemTemplate >
<asp:Label ID="lblverticalName" runat="server" Text='<%# Eval("C002_PositionTypeName") %>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="160px"/>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
In coding..
Private Sub RadGridViewJobs_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles RadGridViewJobs.ItemDataBound
Dim i As Integer
If (TypeOf e.Item Is GridDataItem) Then
Dim lbl As Label = CType(e.Item.FindControl("lblSn"), Label)
If RadGridViewJobs.MasterTableView.CurrentPageIndex = 0 Then
i = RadGridViewJobs.MasterTableView.PageSize * RadGridViewJobs.MasterTableView.CurrentPageIndex
lbl.Text = (e.Item.ItemIndex + 1).ToString
ElseIf RadGridViewJobs.MasterTableView.CurrentPageIndex > 0 Then
i = RadGridViewJobs.MasterTableView.PageSize * RadGridViewJobs.MasterTableView.CurrentPageIndex
lbl.Text = (e.Item.ItemIndex + 1 + i).ToString
End If
End If
End Sub
Regards
Surya Murthy
0

Elanchezhian
Top achievements
Rank 2
answered on 15 Mar 2013, 06:50 AM
You can simply add <%# (Container.ItemIndex+1).ToString() %> into itemtemplate under grid column
<telerik:GridTemplateColumn UniqueName="RowNo" HeaderText="Row No.">
<ItemTemplate>
<%# (Container.ItemIndex+1).ToString() %>
</ItemTemplate>
<HeaderStyle Width="30px" />
</telerik:GridTemplateColumn>
0

Phil
Top achievements
Rank 1
answered on 30 Aug 2013, 04:09 PM
I was faced with the same problem, to number all the rows as the user pages. Using <%# (Container.ItemIndex+1).ToString() %> will only provide row numbers on the current page and will not keep a running total, thus each page will be numbered 1-total rows on page.
Surya's solution seems to be the better way of providing a running row count as the user pages.
A slightly simplified codebehind seems to work well (C#)
Regards,
Phil Hamsey
Surya's solution seems to be the better way of providing a running row count as the user pages.
A slightly simplified codebehind seems to work well (C#)
<
Columns
>
<
telerik:GridTemplateColumn
UniqueName
=
"RowNumber"
FilterControlAltText
=
""
>
<
HeaderStyle
Width
=
"25px"
HorizontalAlign
=
"Right"
/>
<
ItemTemplate
>
<
asp:Label
ID
=
"RowNumber"
runat
=
"server"
/>
</
ItemTemplate
>
</
Columns
>
protected
void
RadGrid1_ItemDataBound(
object
sender, Telerik.Web.UI.GridItemEventArgs e)
{
if
(e.Item
is
GridDataItem)
{
int
rowCounter =
new
int
();
Label lbl = e.Item.FindControl(
"RowNumber"
)
as
Label;
rowCounter = RadGrid1.MasterTableView.PageSize * RadGrid1.MasterTableView.CurrentPageIndex;
lbl.Text = (e.Item.ItemIndex + 1 + rowCounter).ToString();
}
}
Regards,
Phil Hamsey
0

Mohamad
Top achievements
Rank 1
answered on 18 Mar 2014, 10:54 AM
Place the below column in your telerik Grid,
Gridview1 is the name of your Gridview that you need to change, everything else is the same.
<telerik:GridTemplateColumn headertext="" AllowFiltering="false" ItemStyle-Width="30px" >
<ItemTemplate>
<%# (Container.ItemIndex + (Gridview1.CurrentPageIndex * Gridview1.PageSize) + 1).ToString() %>
</ItemTemplate>
</telerik:GridTemplateColumn>
Thanks,
Hamoui
Gridview1 is the name of your Gridview that you need to change, everything else is the same.
<telerik:GridTemplateColumn headertext="" AllowFiltering="false" ItemStyle-Width="30px" >
<ItemTemplate>
<%# (Container.ItemIndex + (Gridview1.CurrentPageIndex * Gridview1.PageSize) + 1).ToString() %>
</ItemTemplate>
</telerik:GridTemplateColumn>
Thanks,
Hamoui