DataGrid外如何找到DataGrid里面控件的值

by1782 2008-12-23 01:40:43
在DataGrid外有一个按钮,如何在按钮事件中找到DataGrid里面控件的值?
在线等。。
...全文
102 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
niuniuhuang 2008-12-23
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 by1782 的回复:]
代码贴出来了,循环遍历了整个 DataGrid1,如何找到lb的值

protected void Button1_Click(object sender, EventArgs e)
{
string sql = "";
foreach (DataGridItem dgi in this.DataGrid1.Items)
{
Label lb_b = (Label)e.Item.FindControl("lb");
//上面这句话出错了.

sql += "insert into test(emp,num) values('" + dgi.Cells[0].Text …
[/Quote]
你那句肯定错啦 那又不是DataGrid的事件你还用e.Item去找
改成这样Label lb_b = (Label)dgi.FindControl("lb");
whj19880101 2008-12-23
  • 打赏
  • 举报
回复
遍历DataGrid,然后用这个属性Findcontrol找到这个控件
readfuture 2008-12-23
  • 打赏
  • 举报
回复
如果你是想遍历选择行的控件就用jiang_jiajia10 的方法:
Label gv =( Label)e.Item.FindControl("id")。
如果想遍历整个GridView请参照:ntljlpb2008和lanlan85525提供的遍历方法
lanlan85525 2008-12-23
  • 打赏
  • 举报
回复
protected void btnSubmit_Click(object sender, EventArgs e)
{
for (int i = 0; i < this.DataGrid1.Items.Count; i++)
{
for (int j = 0; j < DataGrid1.Items[i].Controls.Count; j++)
{
for (int k = 0; k < DataGrid1.Items[i].Controls[j].Controls.Count; k++)
{
Label la = null;
la = new Label();
la =(Label) DataGrid1.Items[i].Controls[j].Controls[k].FindControl("lblText");

if (la != null)
{
la.Text = "ok";
}
}
}
}
}
ntljlpb2008 2008-12-23
  • 打赏
  • 举报
回复
Label lb_b = (Label)dgi.FindControl("lb");
看看行不行,没环境不知道对错
不行的话试试下面的
Label lb_b ;
for( int i = 0; i < DataGrid1.Items.Count; i ++ )
{
lb_b= (Label)DataGrid1.Items[i].FindControl("lb");
}



jiang_jiajia10 2008-12-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 jiang_jiajia10 的回复:]

DataGrid gv =(DataGrid)e.Item.FindControl("id")
[/Quote]
抱歉看错题目了

Label gv =( Label)e.Item.FindControl("id")
by1782 2008-12-23
  • 打赏
  • 举报
回复
终以折腾明白了
哈哈
by1782 2008-12-23
  • 打赏
  • 举报
回复
怎么没人了,望指点下
by1782 2008-12-23
  • 打赏
  • 举报
回复
代码贴出来了,循环遍历了整个 DataGrid1,如何找到lb的值

protected void Button1_Click(object sender, EventArgs e)
{
string sql = "";
foreach (DataGridItem dgi in this.DataGrid1.Items)
{
Label lb_b = (Label)e.Item.FindControl("lb");
//上面这句话出错了.

sql += "insert into test(emp,num) values('" + dgi.Cells[0].Text + "','" + dgi.Cells[1].Text + "','"+lb_b.Text+"') ";

}
SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["connectionString"]);
con.Open();
SqlCommand cmd = new SqlCommand(sql,con);
cmd.ExecuteNonQuery();
}
oswica 2008-12-23
  • 打赏
  • 举报
回复
写一个循环,用遍历所有dg的行,然后在用Item.FindControl这个找到你的控件即可
by1782 2008-12-23
  • 打赏
  • 举报
回复
我说那个按钮是在DataGrid外面的
e.Item.FindControl
怎么用??
by1782 2008-12-23
  • 打赏
  • 举报
回复
里面有个Lable 我要单击按钮时获得Lable的Text值!

用这个不行啊

Label lb_h = (Label)e.Item.FindControl("lb_hb");
supremeholy 2008-12-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 oswica 的回复:]
DG 的 FindControl 方法可以帮你找到你需要的控件。
[/Quote]
遍历DataGrid,用Findcontrol找
jiang_jiajia10 2008-12-23
  • 打赏
  • 举报
回复

DataGrid gv =(DataGrid)e.Item.FindControl("id")
ntljlpb2008 2008-12-23
  • 打赏
  • 举报
回复
[Quote=引用楼主 by1782 的帖子:]
在DataGrid外有一个按钮,如何在按钮事件中找到DataGrid里面控件的值?
在线等。。
[/Quote]

里面什么控件?取哪个值?
oswica 2008-12-23
  • 打赏
  • 举报
回复
DG 的 FindControl 方法可以帮你找到你需要的控件。

62,269

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧