簡體   English   中英

ASP.net C#Gridview ButtonField onclick事件

[英]ASP.net C# Gridview ButtonField onclick event

我已經為網上商店類型的項目編寫了ASP代碼。 有一種方法可以將ProductID添加到cookie並將產品數量添加1。 另一種方法讀取cookie,將cookie轉換為數據表並將其放入gridview。 這個gridview基本上是shoppingcart.aspx頁面。

我現在需要的是一種向該gridview添加一個按鈕字段的方法,在這里我可以添加一個++按鈕(例如產品頁面上的“添加到購物車中的按鈕”),普通的asp按鈕需要一個onclick="methodname"但這些在gridview不。

add1ToShoppingCart(string productId)
{[...]shoppingCartCookie[productId] = (amount + 1).ToString();}

那是我用於所有++按鈕的代碼。 它帶有button.id(buttonID = productID)。 因此,我需要一種使所有按鈕都為同一圖像的方法,但是buttonID必須數據綁定到productID,以便它可以某種方式執行該方法(使用某種onclick="" )。

在過去的幾個小時里,我一直在尋找和搜索Google,但似乎找不到任何東西。 過去我在stackoverflow上找到了很多答案,所以我希望這里的人能對您有所幫助。

提前致謝。

您可以使用模板字段:

                     <asp:TemplateField ItemStyle-Width="33px" ItemStyle-HorizontalAlign="Center" ItemStyle-VerticalAlign="Middle"
                            ShowHeader="false" HeaderStyle-Height="40px">
                            <ItemTemplate>
                                <asp:ImageButton ID="btnAddToCard" runat="server" ImageUrl="~/Images/btnAddToCard.png" CausesValidation="false"
                                    CommandName="AddToCard" CommandArgument='<%# Eval("ID") %>'
                                    />
                            </ItemTemplate>
                            <HeaderStyle Height="40px"></HeaderStyle>
                            <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="33px"></ItemStyle>
                        </asp:TemplateField>

並在后面的C#代碼中創建gridview的以下事件並執行所需的操作:

 protected void GV_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "AddToCard")
        {
           //Write code to add to card
        }
   }

GV是我的GridView的ID!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM