Add columns to your radGrid as below
<Columns>
<telerik:GridTemplateColumn HeaderText="No" UniqueName="TemplateColumn">
<ItemTemplate>
<asp:Label ID="numberLabel" runat="server" Width="30px" />
</ItemTemplate>
<HeaderStyle Width="30px" />
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn HeaderText="Status" UniqueName="Column2">
<ItemTemplate>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn DataField="Heading" DataType="System.String" HeaderText="Heading">
</telerik:GridBoundColumn>
</Columns>
You can assign serial no to label control in radGrid_ItemDataBound method.
protected void radGrid_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridDataItem )
{
Label lbl = e.Item.FindControl("numberLabel") as Label;
lbl.Text = (e.Item.ItemIndex + 1).ToString();
}
}
Dynamically generate checkboxes and add it to Checkboxes column in radGrid
protected void radGrid_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = e.Item as GridDataItem;
CheckBox chk = new CheckBox();
chk.ID = "myCheckbox" + (e.Item.ItemIndex + 1);
item["Column2"].Controls.Add(chk);
}
}