在ASP.NET 2.0中操作数据之四十九:为GridView控件添加RadioButton
在ASP.NET网页中,我们通常会利用控件来方便快速地操作数据。在本篇攻略中,我们将介绍如何为GridView控件添加RadioButton。
- 准备工作
在操作前,我们需要有一个已经绑定数据源的GridView控件。通过控件的DataSource属性、DataBind()方法,我们可以将数据源与GridView控件进行绑定。下面是一个示例:
<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1">
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT [CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address] FROM [Customers]">
</asp:SqlDataSource>
- 为GridView控件添加RadioButton
在GridView控件中,我们可以通过添加TemplateField模板列,并在模板中添加RadioButton控件来为GridView控件添加RadioButton。下面是示例代码:
<asp:GridView ID="GridView2" runat="server" DataSourceID="SqlDataSource2" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<HeaderTemplate></HeaderTemplate>
<ItemTemplate>
<asp:RadioButton runat="server" ID="RadioButton1" GroupName="myGroup" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="CustomerID" HeaderText="CustomerID" SortExpression="CustomerID" />
<asp:BoundField DataField="CompanyName" HeaderText="CompanyName" SortExpression="CompanyName" />
<asp:BoundField DataField="ContactName" HeaderText="ContactName" SortExpression="ContactName" />
<asp:BoundField DataField="ContactTitle" HeaderText="ContactTitle" SortExpression="ContactTitle" />
<asp:BoundField DataField="Address" HeaderText="Address" SortExpression="Address" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT [CustomerID], [CompanyName], [ContactName], [ContactTitle], [Address] FROM [Customers]">
</asp:SqlDataSource>
在模板中添加的RadioButton控件需要设置GroupName,用于标识一组RadioButton控件。通过这个设置,我们就可以保证在同一组中只有一个RadioButton被选中。
- 获取选中的RadioButton
在使用RadioButton控件时,我们经常需要获取用户选中的值。在GridView控件中,我们可以通过遍历每一行,来获取选中的RadioButton控件的值。下面是一个示例代码:
foreach (GridViewRow row in GridView2.Rows)
{
// 找到当前行的单选按钮
RadioButton radio = (RadioButton)row.FindControl("RadioButton1");
// 如果单选按钮被选中
if (radio != null && radio.Checked)
{
// 获取当前行的数据
string customerID = GridView2.DataKeys[row.RowIndex].Value.ToString();
string companyName = row.Cells[1].Text;
string contactName = row.Cells[2].Text;
string contactTitle = row.Cells[3].Text;
string address = row.Cells[4].Text;
}
}
在以上示例代码中,我们通过FindControl方法找到当前行的RadioButton控件,并将当前行的数据存入变量中。
通过以上攻略,我们成功为GridView控件添加了RadioButton,并实现了获取用户选中RadioButton的功能。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:在ASP.NET 2.0中操作数据之四十九:为GridView控件添加RadioButton - Python技术站