如何获取repeater某行第一列的值

generhappy 2010-09-10 02:26:13
首先想循环repeater1有多少行,然后取出来repeater1的第一列的text,然后在取出来这列text所对应的数据库字段名,
然后根据主键在做修改,请问怎么写。。

for(int i=0;i<Repeater1.Items.Count;i++)
{
。。。。。
}
...全文
1445 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xz5211314_0 2010-09-10
  • 打赏
  • 举报
回复
foreach (RepeaterItem rs in Repeater1.Items)
{
string str = ((Label)rs.FindControl("控件ID")).Text;
}
porschev 2010-09-10
  • 打赏
  • 举报
回复

foreach (RepeaterItem rs in Repeater1.Items)
{
string str = ((Label)rs.FindControl("控件ID")).Text;
}

wuyq11 2010-09-10
  • 打赏
  • 举报
回复
foreach(RepeaterItem item in Repeater1.Items)
{
Label l= item. FindControl("Label") as Label;
for(int i = 0; i < item.Cells; ++i) { string text = item.Cells[i].Text;}
}

liuchanggui 2010-09-10
  • 打赏
  • 举报
回复
HiddenField hideid = (HiddenField)Repeater1.Items[i].FindControl("hideid");
int id=int.Parse(hideid.Value);
Label textname = (Label)Repeater1.Items[i].FindControl("labname");
string name =textname.Text;
sh_suyuelin 2010-09-10
  • 打赏
  • 举报
回复
你可以在里面放个lable 隐藏起来。然后获得这个值
generhappy 2010-09-10
  • 打赏
  • 举报
回复
那怎么取出来,这个值对应的数据库字段名以及主键呢?
kke_007 2010-09-10
  • 打赏
  • 举报
回复

<div>
<asp:Repeater ID="Repeater1" runat="server" DataMember="DefaultView"
DataSourceID="SqlDataSource1">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text=<%# Eval("ProductID")%>></asp:Label>
<asp:Label ID="Label2" runat="server" Text=<%# Eval("ProductName")%>></asp:Label>
<br />

</ItemTemplate>
</asp:Repeater>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [ProductID], [ProductName] FROM [Products]">
</asp:SqlDataSource>
<br />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</div>




cs:

C# code

protected void Button1_Click(object sender, EventArgs e)
{
Label textControl = (Label)Repeater1.Items[3].FindControl("Label1");
//textControl.Text 就是你需要的值
}

tanfe12 2010-09-10
  • 打赏
  • 举报
回复
不能直接获取 只能用控件绑定值 然后再后台获取控件, 反正只要能实现你要的效果就是了吧?

for (int i = 0; i < Repeater1.Items.Count; i++)
{

string account = ((Label)Repeater1.Items[i].FindControl("Aindxid")).Text;
}
zhubo_1117 2010-09-10
  • 打赏
  • 举报
回复
for(int i=0;i<Repeater1.Items.Count;i++)
{
RepeaterItem item = Repeater1.items[i];
Control c = item.controls[0]; //第一个
TextBox txt = c as 你的控件类型(TextBox比如说);
txt.text....
}

62,271

社区成员

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

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

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

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