1
我在我的aspx頁面上的中繼器中有一個LinkButton,我正在調用一個函數oncommand並通過CommandArgument傳遞一個參數,但它給我編譯錯誤。 我在這裏錯過了什麼?我該怎麼做才能解決這個問題?編譯錯誤:LinkButton中的oncommand和CommandArgument
ASPX代碼:
<asp:Repeater id="rptProduct" runat="server">
<HeaderTemplate>
<table border="0" width="100%">
<tr style="background-color:blue">
<th align="center"><asp:Label ID="lblProduct" ForeColor="White" runat="server" Text="PRODUCT CATAGORIES"></asp:Label></th>
</tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
</HeaderTemplate>
<ItemTemplate>
<tr style="background-color:cadetblue">
<td align="center"><asp:LinkButton ID="lbType" ForeColor="White" Font-Underline="false"
OnCommand="LoadGrid" CommandArgument='<%# Eval("ItemTypeNumber") %>'
Font-Bold="true" runat="server" Text='<%# Eval("ItemTypeDescription").ToString() %>'></asp:LinkButton></td>
</tr>
</ItemTemplate>
<%--<SeparatorTemplate>
<tr>
<td colspan="6"><hr></td>
</tr>
</SeparatorTemplate>--%>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
aspx.cs頁:
protected void LoadGrid(int typeno)
{
DataSet ds = new DataSet();
ds = new UsersBLL().GetItemDetails(typeno);
gvDetails.DataSource = ds;
gvDetails.DataBind();
}
錯誤: 編譯器錯誤消息: CS0123:否過載關於 'LoadGrid' 匹配委託「的System.Web。 UI.WebControls.CommandEventHandler'
但我必須發送一個整數值,這是一個參數到我的storedproceedure。 –
@ Umm-e-Habiba,你需要對'commandarg..'進行類型轉換,像這樣 - 'int.Parse(e.CommandArgument.ToString())' –
錯誤: 'System.EventArgs'不包含可以找到'CommandArgument'的定義並且沒有找到接受'System.EventArgs'類型的第一個參數的擴展方法'CommandArgument'(你是否缺少使用指令或程序集引用?) –