This way:
HTML:
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" HeaderStyle-BackColor="#3AC0F2" HeaderStyle-ForeColor="White"
runat="server" AutoGenerateColumns="false" OnRowDataBound="OnRowDataBound" OnSelectedIndexChanged="OnSelectedIndexChanged">
<Columns>
<asp:BoundField DataField="Id" HeaderText="Id" ItemStyle-Width="150" />
<asp:BoundField DataField="Delivery" HeaderText="Delivery" ItemStyle-Width="150" />
<asp:BoundField DataField="Type" HeaderText="Type" ItemStyle-Width="150" />
</Columns>
</asp:GridView>
<br />
<asp:TextBox ID="txtId" runat="server" /><br />
<asp:TextBox ID="txtDelivery" runat="server" /><br />
<asp:RadioButtonList ID="RadioButtonList1" runat="server">
<asp:ListItem Text="Normal"></asp:ListItem>
<asp:ListItem Text="Urgent"></asp:ListItem>
</asp:RadioButtonList>
<asp:LinkButton ID="lnkDummy" runat="server"></asp:LinkButton>
</div>
</form>
C#:
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[3] { new DataColumn("Id"), new DataColumn("Delivery"), new DataColumn("Type") });
dt.Rows.Add(1, "Prodcut1", "Normal");
dt.Rows.Add(2, "Prodcut1", "Urgent");
dt.Rows.Add(3, "Prodcut1", "Urgent");
dt.Rows.Add(4, "Prodcut1", "Normal");
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
protected void OnRowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes["onclick"] = Page.ClientScript.GetPostBackClientHyperlink(GridView1, "Select$" + e.Row.RowIndex);
e.Row.Attributes["style"] = "cursor:pointer";
}
}
protected void OnSelectedIndexChanged(object sender, EventArgs e)
{
this.txtId.Text = GridView1.SelectedRow.Cells[0].Text;
this.txtDelivery.Text = GridView1.SelectedRow.Cells[1].Text;
this.RadioButtonList1.SelectedIndex = GridView1.SelectedRow.Cells[2].Text == "Normal" ? 0 : 1;
}
Import:
using System.Data;
Add this in your page directive
EnableEventValidation="false"
Thank You.