GridView 控件提问 急! GridView中有两列,第一列是选择列,都是checkbox,第二列是数据列,从数据库中读出数据,想要的效果是如果用户选择一个checkbox,则获得这个checkbox对应的数据列的数据,在cs文件中如何写? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在模板列里放checkbox和textbox控件,在提交的时候去遍历整个gridviewItem不就可以了 for (int i = 0; i < GridView1.Rows.Count; i++) { CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected"); if (chb.Checked) { 你要读的数据 //strTxt = strTxt + "'" + GridView1.DataKeys[i].Value.ToString().Trim() + "'" + ","; } }循环 for (int i = 0; i < GridView1.Rows.Count; i++) { CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected"); if (chb.Checked) { 你要读的数据 //strTxt = strTxt + "'" + GridView1.DataKeys[i].Value.ToString().Trim() + "'" + ","; } } 正解。 额。这个GridView中应该有个键值吧?for(int i = 0;i<GridView.rows.count;i++){checkbox chk = (checkbox )GridView.rows[i].FindControl("checkbox的控件名称")if(chk.Checked == true){根据键值从数据库中读出数据}} 不知道能不能帮到你~ 如果仅仅是想得到数据列的内容这样就可以了 for (int i = 0; i < GridView1.Rows.Count; i++) { CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected"); if (chb.Checked) { str=GridView1.Rows[i]["列名"].ToString(); } } for (int i = 0; i < GridView1.Rows.Count; i++) { CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected"); if (chb.Checked) { 你要读的数据 //strTxt = strTxt + "'" + GridView1.DataKeys[i].Value.ToString().Trim() + "'" + ","; } } 不用遍历的话如果点击后checkbox值会变化用CellValueChanged事件也可以不过感觉你这不太合理啊,为啥要点击checkbox再选中相应数据呢 for (int i = 0; i < GridView1.Rows.Count; i++) { CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected"); if (chb.Checked) { 你要读的数据 //strTxt = strTxt + "'" + GridView1.DataKeys[i].Value.ToString().Trim() + "'" + ","; } } “选择一个checkbox,则获得这个checkbox对应的数据列的数据?”是不是得到此checkbox对应行数据啊?要是这样的话,写在RowEditing函数中就好了protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { GridView1.Rows[e.NewEditIndex].Cells[…].Text.Trim(); //用它获得此行对应的各列数据! } 如何最小化一个外部程序 属性Font的默认值怎么写 有关存储的问题? 明明调用了多线程和invoke了,怎么form_load的时候还是假死? 等了一上午没人回答,郁闷,,再放一百分,求解!! TableLayoutPanel列增加与删除 Win7做的WPF程序能在Win2008和win7下运行,但是XP却不行! 如何实现拷贝指定目录下的所有文件及文件夹,到另一目录? 用C#做的菜单怎么加入图标? c#解析Xml 求一个测试函数运行时间的方法或函数!!!! 如何通过程序过滤到网页html中的广告?
{
CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected");
if (chb.Checked)
{
你要读的数据
//strTxt = strTxt + "'" + GridView1.DataKeys[i].Value.ToString().Trim() + "'" + ",";
}
}
循环
{
CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected");
if (chb.Checked)
{
你要读的数据
//strTxt = strTxt + "'" + GridView1.DataKeys[i].Value.ToString().Trim() + "'" + ",";
}
}
正解。
for(int i = 0;i<GridView.rows.count;i++)
{
checkbox chk = (checkbox )GridView.rows[i].FindControl("checkbox的控件名称")
if(chk.Checked == true)
{
根据键值从数据库中读出数据
}
} 不知道能不能帮到你~
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected");
if (chb.Checked)
{
str=GridView1.Rows[i]["列名"].ToString();
}
}
{
CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected");
if (chb.Checked)
{
你要读的数据
//strTxt = strTxt + "'" + GridView1.DataKeys[i].Value.ToString().Trim() + "'" + ",";
}
}
不过感觉你这不太合理啊,为啥要点击checkbox再选中相应数据呢
{
CheckBox chb = (CheckBox)GridView1.Rows[i].FindControl("chkSelected");
if (chb.Checked)
{
你要读的数据
//strTxt = strTxt + "'" + GridView1.DataKeys[i].Value.ToString().Trim() + "'" + ",";
}
}
要是这样的话,写在RowEditing函数中就好了
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.Rows[e.NewEditIndex].Cells[…].Text.Trim();
//用它获得此行对应的各列数据!
}