![](/img/trans.png)
[英]How to pass multiple values with Link Button Inside repeater to another page?
[英]Pass object as CommandArguement in a Repeater Link Button
我有一個帶有客戶列表的中繼器。 針對每個客戶都有一個刪除鏈接按鈕。 作為鏈接按鈕的一部分,我要將客戶對象傳遞給命令參數,如下所示(其中Container.DataItem是客戶對象):
<asp:LinkButton ID="lnkDelete"
OnClientClick="return confirmDelete();"
OnClick="Customer_OnDelete"
CommandArgument="<%# Container.DataItem %>"
CommandName="Delete"
runat="server"></asp:LinkButton>
當我這樣做時:
var button = (((LinkButton) sender));
var customer= button.CommandArgument;
button.CommandArguement是一個字符串。 我在使用Nhibernate時需要所有對象屬性,因此需要設置所有內容,刪除記錄的ID不夠。 我在網上看到了一些示例,這些示例將逗號分隔的值列表傳遞到命令參數中,但要避免這樣做。 這可能嗎?
有任何想法嗎? 謝謝
我認為這種情況的最佳方法是:
CommandArgument
獲取ID 使用Repeater
事件OnItemCommand
。 此事件包含RepeaterCommandEventArgs
。 您無法通過以下方式獲取CommandArgument
:
protected void myRepeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
int customerID= Convert.ToInt32(e.CommandArgument.ToString());
}
在您的asp:LinkButton
標記處使用:
CommandArgument='<%# DataBinder.Eval(Container.DataItem, "ID") %>'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.