我有一个GridView,我在Page_Load中将其绑定到SqlDataReader上。它有一列带有按钮,我试图使用以下代码获取单击按钮时的行:
int index = Convert.ToInt32(e.CommandArgument);
GridViewRow row = GridView1.Rows[index];
编辑:将评论部分的.aspx页面粘贴如下:
<asp:GridView ID="GridView1" runat="server" CellPadding="4" ForeColor="#333333" OnRowCommand="GridView1_RowCommand" DataKeyNames="id" GridLines="None"> <AlternatingRowStyle BackColor="White" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="btnChange" runat="server" Text="Change" CommandName="Test" Visible='<%# Convert.ToBoolean(Eval("Tested")) == true ? true : false %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</aspx:GridView>
我遇到了以下错误:'System.FormatException: 输入字符串的格式不正确。',出错代码为'int index = Convert.ToInt32(e.CommandArgument);'。
有任何想法吗?
FormatException
异常。http://msdn.microsoft.com/en-us/library/sf1aw27b.aspx - Bryan Crosby