<asp:GridView runat="server"> <Columns> <asp:TemplateField> <ItemTemplate> DisplayIndex : <%# Container.DisplayIndex %> || DataItemIndex : <%# Container.DataItemIndex %><br /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView>
【方法八】
控件的ID和Name命名可以如上方法,我需要通过RowCommand()方法判断选中的是哪一列,而要使用这个方法的前提是,e.CommandArgument这么一个属性(首先必须知道在GridView里,行索引是被放在CommandArgument里面的),现在的任务就是获得这么一个属性。查资料可以知道,在创建GridView控件中每一行时,都将引发一个RowCreated事件,借此这么个方法,可以把linkButton所选择的行号写入CommandArgument中。
protected void gvInfo_RowCreated(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { LinkButton lk1 = (LinkButton)e.Row.FindControl("lkbtn");//LinkButton的ID lk1.CommandArgument = e.Row.RowIndex.ToString(); } } protected void gvInfo_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "ADD")//我LinkButton的CommandName { int index = Convert.ToInt32(e.CommandArgument); string aa = gvInfo.Rows[index].Cells[1].Text.ToString();//获取当前行列号为一的值,列号从0开始 } }