关于:GridView里如何获取某一行的DropDownList的值?

無生無灭 2010-09-25 02:53:24
1.现有一个GridView
2.给此控件添加一个模板
3.在模板里放入一个DropDownList控件
4.在GridView外放一个按钮
5.要实现的内容:运行后GridView显示一列DropDownList控件,
6.我的问题是:单击GridView外的按钮,如何获取某一行的DropDownList的Text值
谢谢!
...全文
114 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2010-09-25
  • 打赏
  • 举报
回复
protected void Button1_Click(object sender, EventArgs e)
{
GridViewRow gvr = (sender as LinkButton).NamingContainer as GridViewRow;
DropDownList txt=gvr.FindControl("ddl") as DropDownList ;
}
無生無灭 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 yumen3501 的回复:]
楼主自己都不知道他想要什么
[/Quote]
呃!我讲那么清楚还没有看懂,我保持沉默了
Assassin_ 2010-09-25
  • 打赏
  • 举报
回复
楼主自己都不知道他想要什么
無生無灭 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 net_lover 的回复:]
引用 11 楼 dibinbin8023 的回复:

引用 2 楼 q107770540 的回复:
//获取第一行的DropDownList
DropDownList dd=GridView1.Rows[0].FindControl("DropDownList1") as DropDownList;

那如果,我要获取第五行的呢?关键问题,如果有一百万条数据,我要获取其中某一行的控件,……
[/Quote]
在选择了DropDownList的Text值的时候如何获取当前行的索引?
孟子E章 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 dibinbin8023 的回复:]

引用 2 楼 q107770540 的回复:
//获取第一行的DropDownList
DropDownList dd=GridView1.Rows[0].FindControl("DropDownList1") as DropDownList;

那如果,我要获取第五行的呢?关键问题,如果有一百万条数据,我要获取其中某一行的控件,那这一行的行号我怎么获取呢?
[/Quote]

关键是你的行号怎么确定的
是点击行?还是点击那行的按钮?
http://dotnet.aspx.cc/file/Add-Delete-Update-Edit-Data-With-Paging-in-GridView.aspx

这个例子很能说明问题了
無生無灭 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 wang2129929 的回复:]
能说详细点吗? 你放了个摸般, 那不是有几行就有几个DropDownList, 这时候你选种一个DropDownList, 然后点按钮, 弹出TEXT .

如果这样, 当你选种 DropDownList的时候, 就记录起来他是哪行. 设置个全局变量
[/Quote]
什么意思?弹出TEXT?当你选种 DropDownList的时候, 就记录起来他是哪行. 设置个全局变量?能讲的详细点吗?那全局变量从哪儿获取的?
孟子E章 2010-09-25
  • 打赏
  • 举报
回复
参见
http://dotnet.aspx.cc/file/Add-Delete-Update-Edit-Data-With-Paging-in-GridView.aspx
  • 打赏
  • 举报
回复
能说详细点吗? 你放了个摸般, 那不是有几行就有几个DropDownList, 这时候你选种一个DropDownList, 然后点按钮, 弹出TEXT .

如果这样, 当你选种 DropDownList的时候, 就记录起来他是哪行. 设置个全局变量 接受
然后DropDownList dropdownlist1 = (DropDownList)grdShow.Rows[全局变量].Cells["列数"].FindContro("DropDownList1");

無生無灭 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 q107770540 的回复:]
//获取第一行的DropDownList
DropDownList dd=GridView1.Rows[0].FindControl("DropDownList1") as DropDownList;
[/Quote]
那如果,我要获取第五行的呢?关键问题,如果有一百万条数据,我要获取其中某一行的控件,那这一行的行号我怎么获取呢?
無生無灭 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jinkuang45 的回复:]
C# code

DropDownList dropdownlist1 = (DropDownList)grdShow.Rows["行数"].Cells["列数"].FindContro("DropDownList1");
[/Quote]
大哥,关键就是不知道如何获取那一行的“行数”啊
無生無灭 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 misswangjinfeng 的回复:]
看来都不行
[/Quote]
是啊!如果我知道怎样获取那一行的行号,我就不会提出问题来了
yufenghua 2010-09-25
  • 打赏
  • 举报
回复
很强悍的包装。。。。没意义 个人意见
misswangjinfeng 2010-09-25
  • 打赏
  • 举报
回复
看来都不行
q107770540 2010-09-25
  • 打赏
  • 举报
回复
不需要列数
jackyuen1 2010-09-25
  • 打赏
  • 举报
回复
DropDownList dropdownlist1 = (DropDownList)grdShow.Rows["行数"].Cells["列数"].FindContro("DropDownList1");
孟子E章 2010-09-25
  • 打赏
  • 举报
回复
foreach (GridViewRow gvr in GridView2.Rows)
{
DropDownList ch = (DropDownListch)gvr.FindControl("DropDownList1");

}
冰川711 2010-09-25
  • 打赏
  • 举报
回复


string str=((DropDownList)grdShow.Rows["行数"].Cells["列数"].FindContro("DropDownList1")).SelectedValue;



q107770540 2010-09-25
  • 打赏
  • 举报
回复
//获取第一行的DropDownList
DropDownList dd=GridView1.Rows[0].FindControl("DropDownList1") as DropDownList;
冰川711 2010-09-25
  • 打赏
  • 举报
回复

DropDownList dropdownlist1 = (DropDownList)grdShow.Rows["行数"].Cells["列数"].FindContro("DropDownList1");

62,271

社区成员

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

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

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

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