首页 新闻 搜索 专区 学院

gridview中取得当前行的行号,共有几种方法啊,最好具体

0
悬赏园豆:20 [已解决问题] 解决于 2008-03-27 15:24
 gridview中取得当前行的行号,共有几种方法啊,最好具体点,有实例
问题补充: asp中,在gridview中,有一模板列,就叫linkbutton,想单击它时,获取它所在行的索引值
小孤狸的主页 小孤狸 | 初学一级 | 园豆:7
提问于:2008-03-26 15:51
< >
分享
最佳答案
0
HTML Code <asp:GridView ID="GridView1" DataKeyNames="ID" runat="server"> <Columns> <asp:boundfield DataField="Name" HeaderText="Name"></asp:boundfield> <asp:templatefield> <itemtemplate> <asp:LinkButton ID="LinkButton1" runat="server" onclick="LinkButton1_Click">LinkButton</asp:LinkButton> </itemtemplate> </asp:templatefield> </Columns> </asp:GridView> C# code protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.GridView1.DataSource = GetTable(); this.GridView1.DataBind(); } } private DataTable GetTable() { DataTable dt = new DataTable(); dt.Columns.Add("ID"); dt.Columns.Add("Name"); for (int i = 0; i < 5; i++) { dt.Rows.Add(new string[] { "ID"+i.ToString(), "Name"+i.ToString()}); } return dt; } protected void LinkButton1_Click(object sender, EventArgs e) { //行号 int row = ((GridViewRow)((LinkButton)sender).NamingContainer).RowIndex; //所点击行第一列Name的值 Response.Write(this.GridView1.Rows[row].Cells[0].Text); //所点击行的ID Response.Write(this.GridView1.DataKeys[row].Value.ToString()); }
翅膀 | 菜鸟二级 |园豆:335 | 2008-03-26 21:47
其他回答(4)
0
<asp:GridView ID="gvTest" runat="server"> <Columns> <asp:TemplateField> <ItemTemplate> DisplayIndex : <%# Container.DisplayIndex %> || DataItemIndex : <%# Container.DataItemIndex %><br /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> protected void Page_Load(object sender, EventArgs e) { DataTable dt = new DataTable(); dt.Columns.Add("name"); for (int i = 0; i < 20; i++) { DataRow dr = dt.NewRow(); dt.Rows.Add(dr); } gvTest.DataSource = dt; gvTest.DataBind(); } 你说的是这个?
沙加 | 园豆:3680 (老鸟四级) | 2008-03-26 18:11
0
e.rowIndex
AndyFish | 园豆:1575 (小虾三级) | 2008-03-26 18:19
0
如果是.net2.0的话就更容易了 GridView设置DataKeyNames属性 比如给MyGridView设置DataKeyNames="ArticleID" 然后在.cs中 string id = this.MyGridView.DataKeys[e.RowIndex].Value.ToString(); 简单吧
小龟爬爬 | 园豆:255 (菜鸟二级) | 2008-03-27 00:46
0
e.Item.FindControl("控件ID") e.CommandArgument e.Item.Cells[0].Text 就这几个吧
yeyang | 园豆:418 (菜鸟二级) | 2008-03-27 09:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册