关于Gridview RadioButton的问题
我定义了GridView在里面加了RadioButton列,RadioButton同组的有三个,在绑定数据时,如何跟据数据库里的值来绑定RadioButton是否选中,这...
我定义了GridView 在里面加了RadioButton列,RadioButton同组的有三个,在绑定数据时,如何跟据数据库里的值来绑定RadioButton是否选中,这个不会,望高手指点,最好说的详细一点,我初学,有源码最好,谢谢 了
把GridView的绑定也说一下,关于GridView和RadioButton同时绑定也不会,请各位高手说的详细点。 展开
把GridView的绑定也说一下,关于GridView和RadioButton同时绑定也不会,请各位高手说的详细点。 展开
2个回答
展开全部
GridView绑定就按正常绑定就行,在此以按照对象数组绑定了GridView来说明
第一步:
建一个类Kind
结构为一个ID,一个Sex性别
public class Person
{
private string _id;
private string _rodA;
/// <summary>
/// 自动编号
/// </summary>
public string ID
{
get { return _id; }
set { _id = value; }
}
/// <summary>
/// 性别
/// </summary>
public string Sex
{
get { return _sex; }
set { _sex = value; }
}
然后
取出要绑定的数据将每一行封装为对象然后放入一个数组中如下(取数据省略)
ArrayList list = new ArrayList();
for (int rowIndex = 0; rowIndex < dt.Rows.Count; rowIndex++)
{
Kind kind = new Kind();
kind.ID = Convert.ToString(dt.Rows[rowIndex]["ID"]);
kind.Sex = Convert.ToString(dt.Rows[rowIndex]["Sex"]);
list.Add(product);
}
然后将list绑定到GridView
在GridView的RowDataBound的事件里写代码如下
Kind kind = e.Row.DataItem as Kind;
if (e.Row.RowType != DataControlRowType.Header && e.Row.RowType != DataControlRowType.Footer)
{
if (e.Row.RowIndex >= 0)
{
RadioButtonA rodA = (RadioButtonA)e.Row.FindControl("RadioButtonA");
RadioButtonB rodB = (RadioButtonB)e.Row.FindControl("RadioButtonB");
if(kind.Sex="男")
{
rodA.Checked = true;
}
if(kind.Sex="女")
{
rodB.Checked = true;
}
}
}
我是已两个RadioButton为例写的,发懒了,呵呵
第一步:
建一个类Kind
结构为一个ID,一个Sex性别
public class Person
{
private string _id;
private string _rodA;
/// <summary>
/// 自动编号
/// </summary>
public string ID
{
get { return _id; }
set { _id = value; }
}
/// <summary>
/// 性别
/// </summary>
public string Sex
{
get { return _sex; }
set { _sex = value; }
}
然后
取出要绑定的数据将每一行封装为对象然后放入一个数组中如下(取数据省略)
ArrayList list = new ArrayList();
for (int rowIndex = 0; rowIndex < dt.Rows.Count; rowIndex++)
{
Kind kind = new Kind();
kind.ID = Convert.ToString(dt.Rows[rowIndex]["ID"]);
kind.Sex = Convert.ToString(dt.Rows[rowIndex]["Sex"]);
list.Add(product);
}
然后将list绑定到GridView
在GridView的RowDataBound的事件里写代码如下
Kind kind = e.Row.DataItem as Kind;
if (e.Row.RowType != DataControlRowType.Header && e.Row.RowType != DataControlRowType.Footer)
{
if (e.Row.RowIndex >= 0)
{
RadioButtonA rodA = (RadioButtonA)e.Row.FindControl("RadioButtonA");
RadioButtonB rodB = (RadioButtonB)e.Row.FindControl("RadioButtonB");
if(kind.Sex="男")
{
rodA.Checked = true;
}
if(kind.Sex="女")
{
rodB.Checked = true;
}
}
}
我是已两个RadioButton为例写的,发懒了,呵呵
展开全部
GridView1.DataBind();
for (int i = 0; i < GridView1.Rows.Count; i++)
{
RadioButton rdo = (RadioButton)GridView1.Rows[i].FindControl("rdo");
if (ds.Tables[0].Rows[i]["数据库字段"].ToString()=="yes")
rdo.checked=true;
else
rdo.checked=false;
}
绑定
<asp:GridView ID="GridView1" runat="server" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<table >
<tr>
<td width="5">
<asp:RadioButton ID="rdo" runat="server" /></td>
</tr>
</table>
</ItemTemplate></asp:TemplateField></Columns></asp:GridView>
for (int i = 0; i < GridView1.Rows.Count; i++)
{
RadioButton rdo = (RadioButton)GridView1.Rows[i].FindControl("rdo");
if (ds.Tables[0].Rows[i]["数据库字段"].ToString()=="yes")
rdo.checked=true;
else
rdo.checked=false;
}
绑定
<asp:GridView ID="GridView1" runat="server" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<table >
<tr>
<td width="5">
<asp:RadioButton ID="rdo" runat="server" /></td>
</tr>
</table>
</ItemTemplate></asp:TemplateField></Columns></asp:GridView>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询