asp.net - ASP-获取 GridRow 值/OnClick 方法

标签 asp.net c#-4.0

我正在开发一个 C#/ASP 4.0 项目,尝试制作一个购物车应用程序。

我的产品页面上有一个 GridView,显示所有商品,我希望用户能够单击此 GridView 中的“添加到购物车”按钮字段,这显然会将商品添加到购物车.

但是,我在实际为 gridview 设置 OnClick 事件时遇到了问题?这似乎在“属性”的“事件”菜单中不可用。此外,我似乎也不知道如何获取特定行。我有方法可以做到这一点...

 int productID = Convert.ToInt32(GridView1.Rows[n].Cells[0].Text);
 AddToCart(productID);

但我不知道如何计算出 n,或者当他们单击 gridview 中的 ButtonField 时如何调用此方法。

最佳答案

你可以这样做:

首先,向 gridview 添加模板字段:

<asp:TemplateField HeaderText="Add to Cart">
   <ItemTemplate>
         <asp:Button id="bthAddToCart"
              CommandArgument'<%#Eval("ProductID")%>'
               OnClick="bthAddToCart_Click"
               Text="Add to Cart"
              runat="server"/>
   </ItemTemplate>
</asp:TemplateField>

现在,添加按钮的 Click 事件的处理程序:

protected void bthAddToCart_Click(object sender, EventArgs e)
{

   Button button = (Button)sender;
   int productID = Convert.ToInt32(button.CommandArgument);
   AddToCart(productID);
}

关于asp.net - ASP-获取 GridRow 值/OnClick 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9624865/

相关文章:

asp.net - 移动设备被检测为非移动设备

c# - HashSet 或 Distinct 以读取对象 List<> 中属性的不同值

c# - 在 Debug模式下构建时的 bool 值与在 Release模式下不同

asp.net - 有哪些选项可用于在 ASP.NET MVC2 中存储应用程序设置?

c# - 显示的货币格式

c# - 如何访问类库中的 app.config 值?

wpf - 在 VisualTreeHelper 中看不到用户控件内的控件

c# - 如何通过电子邮件发送的链接登录到 asp.net 应用程序

.net - 是类还是结构

.net - 如何在VS2010中指定T4(文本模板)以使用C#4.0?