Ниже приведен пример как внедрить в DataGrid RadioButton контрол.
<%@ Page %>
<script runat="server" language="c#">
string _current = "";
void Page_Load(object sender, EventArgs e) {
if (IsPostBack) _current = "," + Request.Form["uid"].ToString() + ",";
_grid.DataSource = new int[] {1,2,3,4,5,6,7,8,9,10};
_grid.DataBind();
}
void OnSaveButtonClick(object sender, EventArgs e) {
Response.Write(Request.Form["uid"]);
}
string IsChecked(int id) {
if(_current.IndexOf("," + id.ToString() + ",") >= 0) {
return "checked";
} else {
return "";
}
}
</script>
<form runat="server">
<asp:DataGrid runat="server" id="_grid">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<input <%#IsChecked((int) DataBinder.Eval(Container, "DataItem"))%> type="radio" name="uid" value='<%# DataBinder.Eval(Container, "DataItem")%>'>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
Item <%# DataBinder.Eval(Container, "DataItem")%>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
<asp:Button runat="server" Text="Save" Width="100px" onclick="OnSaveButtonClick"/>
</form>