gridview 模板列中的linkbutton 的click事件中如何获得gridview 的rowno?

xiaoyanwei2000 2009-03-09 04:30:28
如题,
...全文
368 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
火星大能猫 2010-06-08
  • 打赏
  • 举报
回复
3楼好方法
wuyq11 2009-03-09
  • 打赏
  • 举报
回复
LinkButton link1 = sender as LinkButton;
int rowIndex = Int32.Parse(link1.CommandArgument);}
malin2670372 2009-03-09
  • 打赏
  • 举报
回复
学习了,以前用CommandArgument去绑定CommandArgument=' <%#Container.ItemIndex %>'
koukoujiayi 2009-03-09
  • 打赏
  • 举报
回复
这要在绑定的时候,设置LinkButton:
1.给每个Linkbutton设置CommandArgument为GridView的行号;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
((LinkButton)e.Row.Cells[列号].FindControl("LinkButton1")).CommandArgument = e.Row.RowIndex.ToString();
}
}
2在LinkButton的click获取
protected void LinkButton1_Click(object sender, EventArgs e)
{
LinkButton myL = (LinkButton)sender;
string rowno = myL.CommandArgument;
Response.Write(rowno);
}


我姓区不姓区 2009-03-09
  • 打赏
  • 举报
回复

protected void LinkButton1_OnClick(object sender, EventArgs e)
{
GridViewRow gvr = (sender as LinkButton).NamingContainer as GridViewRow;
if(gvr != null)
this.ClientScript.RegisterStartupScript(typeof(string), "js", "alert('行索引:"+gvr.RowIndex +"')", true);
}
mqc507 2009-03-09
  • 打赏
  • 举报
回复
什么rowno ? RowIndex 么?你是在RowCommand事件中执行的click事件还是单独针对linkbutton执行的click事件 ?
如果是RowCommand事件中的话,你可以设置一个隐藏域存放 RowIndex( <asp:HiddenField ID="hidRowIndex" runat="server" Value='<%#Container.ItemIndex %>' /> )后台通过((LinkButton)e.CommandSource).Parent.FindControl("hidRowIndex")获取,或者如果id对你来说不是重要的话,可以设置 LinkButton 的 CommandArgument='<%#Container.ItemIndex %>',后台直接通过Convert.ToInt32(e.CommandArgument)获得。

如果你是通过click(object sender,EventArgs e)来执行事件的话,这里的sender其实就是指的该LinkButton ,获取该button: LinkButton lbBtn=(LinkButton)sender;方法同样是通过设置隐藏域来获取。lbBtn.Parent.FindControl("hidRowIndex");
airfish108 2009-03-09
  • 打赏
  • 举报
回复
protected void LinkButton1_OnClick(object sender, EventArgs e)
{
LinkButton LinkButton1 = sender as DropDownList;

int index = (DropDownList1.NamingContainer as GridViewRow).RowIndex;

......
}
这个就没问题~不好意思~借用liuyeede您的答案一用~
the_pain 2009-03-09
  • 打赏
  • 举报
回复
cs:


<!-- 这里设置它的CommandName-->
<asp:LinkButton ID="LIKBt" runat="server" OnClick="LIKBt_Click" Text='<%# Eval("id") %>' CommandName="name" ></asp:LinkButton> 

.cs



protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
if (e.CommandName == "name")
{
LinkButton lnk = e.Item.FindControl("LIKBt") as LinkButton;
Label lbl = e.Item.FindControl("FaqID") as Label;
int strID = int.Parse(lnk.Text);
string strName = lbl.Text;
}
}
liuyeede 2009-03-09
  • 打赏
  • 举报
回复
protected void LinkButton1_OnClick(object sender, EventArgs e)
{
LinkButton LinkButton1 = sender as DropDownList;

int index = (DropDownList1.NamingContainer as GridViewRow).RowIndex;

......
}
wanghao3616 2009-03-09
  • 打赏
  • 举报
回复
绑定时 就传入值 不就完了

62,267

社区成员

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

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

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

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