我有一个网格显示产品版本,并有几个链接按钮,如编辑,删除,预览等。 点击编辑按钮我想获得产品ID和版本ID并重定向到一些xyz .aspx页面,其中可以编辑产品详细信息。
这里是我的网格的外观:从RowCommand获取数据
<asp:GridView ID="grdBindVersion" runat="server" AutoGenerateColumns="false"
onrowcommand="grdBindVersion_RowCommand" >
<RowStyle BorderStyle="Solid" BorderWidth="1px" />
<Columns>
<asp:BoundField datafield="HistoryId" HeaderText="Version ID.">
<HeaderStyle CssClass="grid"></HeaderStyle>
</asp:BoundField>
<asp:BoundField datafield="Title" HeaderText="Title">
<HeaderStyle CssClass="grid"></HeaderStyle>
</asp:BoundField>
<asp:TemplateField HeaderText = "Edit">
<ItemTemplate>
<asp:LinkButton ID="Edit" runat="server" CommandArgument='<%# Container.DataItem %>' CommandName ="Add">Edit</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText = "Delete">
<ItemTemplate>
<asp:LinkButton ID="Delete" runat="server">Delete</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText = "Add Sub Page">
<ItemTemplate>
<asp:LinkButton ID="AddSubPage" runat="server">Add Sub Page</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText = "Add Rank">
<ItemTemplate>
<asp:LinkButton ID="AddRank" runat="server">Add Rank</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText = "Approve/DisApprove">
<ItemTemplate>
<asp:LinkButton ID="ApproveStatus" runat="server">Approve/DisApprove</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText = "Complete">
<ItemTemplate>
<asp:LinkButton ID="Complete" runat="server">Complete</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText = "Preview">
<ItemTemplate>
<asp:LinkButton ID="Preview" runat="server">Preview</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText = "Comment">
<ItemTemplate>
<asp:LinkButton ID="Comment" runat="server">Comment</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我跟踪链接按钮,单击该RowCommand
事件在GridView的。 在这里,我想获取VersionID和ProductID,然后重定向到另一个页面。 请帮帮我。 我对编码真的很陌生。 我做了一些谷歌,但没有任何解决方案帮助我。
嗨Saurabh。我试过你的代码,但它给出了一个错误。 System.Web.UI.WebControls.GridViewCommandEventArgs'没有包含'Row'的定义,也没有找到接受类型'System.Web.UI.WebControls.GridViewCommandEventArgs'的第一个参数的扩展方法'Row'(是) – Sayed 2011-05-17 07:05:05
将CommandArgument ='<%#DataBinder.Eval(Container.DataItem,“HistoryId”)%>'设置为编辑按钮并使用以下代码: if(e.CommandName .Equals(“Add”)) { int HistoryId = Convert.ToInt16(e.CommandArgument.ToString()); //重定向 } – Saurabh 2011-05-17 07:23:46
此答案无效,虽然评论是正确的,但与实际答案完全冲突。我认为一些编辑是为了 – 2012-06-29 00:05:35