如何从GridView页面取值?

浮尘1213 2011-10-07 05:02:57
如题:
string strItemName = dvListItem.Rows[i].Cells[2].ToString();
为什么这样取到不是值
而是这个:
System.Web.UI.WebControls.DataControlFieldCell
求指教!
...全文
171 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
ZHUKY 2011-10-08
  • 打赏
  • 举报
回复

string strItemName = ((Lable)dvListItem.Rows[i].FinControl("ID")).Text
chuxue1342 2011-10-08
  • 打赏
  • 举报
回复
跟你的GridView绑定有关,如果你用的BoudField或
<asp:TemplateField >
<ItemTemplate >
<%#Eval("column") %>
</ItemTemplate>
</asp:TemplateField>
则直接用:string strItemName = dvListItem.Rows[i].Cells[2].Text();
就可以获取到了,否则你需要转为相应的控件才能取到值!
wcj1018_net 2011-10-08
  • 打赏
  • 举报
回复
不要纠结为什么这样行,这样不行,可以试试除了gridview还有没有其他的数据绑定方式
CqCoder 2011-10-08
  • 打赏
  • 举报
回复
.Rows[2].Cells[2].

gridview第三行第三列的元素
浮尘1213 2011-10-08
  • 打赏
  • 举报
回复
好,很好!
这个问题的确够低级![Quote=引用 15 楼 nanqi0506 的回复:]
我觉得我能力有限,修行不够,无法回答你的问题.
[/Quote]
zangyuedejintou 2011-10-07
  • 打赏
  • 举报
回复
学习一个
神棍 2011-10-07
  • 打赏
  • 举报
回复
我觉得我能力有限,修行不够,无法回答你的问题.
浮尘1213 2011-10-07
  • 打赏
  • 举报
回复
如何从GridView页面上取出值来呢?
神棍 2011-10-07
  • 打赏
  • 举报
回复
OK,不是单元格.
你GridView是不是由行和列组成的,那么
dvListItem.Rows[i].Cells[2]取的就是第i + 1行第3列的那个"小方块"
浮尘1213 2011-10-07
  • 打赏
  • 举报
回复
指定的参数已超出有效值的范围[Quote=引用 7 楼 taomanman 的回复:]
更正一下,缺少强制转换

C# code

Label lbl = (Label)dvListItem.Rows[i].Cells[2].Controls[0];
string strItemName = lbl.Text;
Response.Write(strItemName );
[/Quote]
浮尘1213 2011-10-07
  • 打赏
  • 举报
回复
不是单元格,是在GridView上取值
神棍 2011-10-07
  • 打赏
  • 举报
回复
看你单元格里放的什么了,若只是文字,请参考4楼,但是不需要再ToString
若是控件,请参考7楼第一行代码.
想不通为什么总有人在字符串上ToString
浮尘1213 2011-10-07
  • 打赏
  • 举报
回复
那应该如何取呢?
神棍 2011-10-07
  • 打赏
  • 举报
回复
dvListItem.Rows[i].Cells[2]取到的只是单元格.
暖枫无敌 2011-10-07
  • 打赏
  • 举报
回复
更正一下,缺少强制转换

Label lbl = (Label)dvListItem.Rows[i].Cells[2].Controls[0];
string strItemName = lbl.Text;
Response.Write(strItemName );
yue547283947 2011-10-07
  • 打赏
  • 举报
回复
string strItemName = (dvListItem.Rows[i].Cells[2].Controls[0] as TextBox).Text
LONG332949572 2011-10-07
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zy64891635 的回复:]
string strItemName = dvListItem.Rows[i].Cells[2].Text.ToString();
[/Quote]++++++
zy64891635 2011-10-07
  • 打赏
  • 举报
回复
string strItemName = dvListItem.Rows[i].Cells[2].Text.ToString();
暖枫无敌 2011-10-07
  • 打赏
  • 举报
回复

Label lbl = dvListItem.Rows[i].Cells[2].Controls[0];
string strItemName = lbl.Text;
Response.Write(strItemName );
浮尘1213 2011-10-07
  • 打赏
  • 举报
回复
System.Web.UI.WebControls.DataControlFieldCell
加载更多回复(1)

62,041

社区成员

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

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

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

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