我正在开发一个 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/