[英]Repeater - bind a button to a field
我正在通過轉發器顯示3個作業。 每個作業都有一個JOB應用程序ID。 在我的數據訪問層中,您可以通過ID刪除數據庫中的作業。 所以,在任何類中我都可以調用和刪除一個條目。
JobOpeningDAL app = new JobOpeningDAL();
app.RemoveJobOpening(64);
我想為3個以上的工作生成一個按鈕。
我想將此代碼放在按鈕中,而不是硬編碼ID。
訣竅是每個按鈕需要獲得該作業ID。
這可能嗎?
有沒有辦法根據以下項目將不同的按鈕綁定到每個轉發器項目:JOB ID? 這樣,當用戶單擊作業下面的刪除按鈕時,它會自動刪除它。
這是我的轉發器代碼
<br />
Job ID
<%# DataBinder.Eval(Container.DataItem, "JOBAPPLICATIONID")%>
<br />
Job Description:
<%# DataBinder.Eval(Container.DataItem, "JobDescription") %>
<br />
Wage:
<%# DataBinder.Eval(Container.DataItem, "Wage") %>
<br />
Department ID:
<%# DataBinder.Eval(Container.DataItem, "DepartmentID") %>
<br />
Has been filled:
<%# DataBinder.Eval(Container.DataItem, "HasBeenFilled") %>
<br />
Location:
<%# DataBinder.Eval(Container.DataItem, "Location") %>
<br />
Job Name:
<%# DataBinder.Eval(Container.DataItem, "JobName") %>
<br />
如果我理解你要做什么,你可以嘗試以下方法:
像這樣為你的轉發器添加一個按鈕:
<asp:Button ID="yourButton" runat="server" CommandName="delete" CommandArgument='<%# Eval("id")' />
然后在你的repeater的itemcommand處理程序中,你可以執行以下操作:
protected void YourRepeater_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "delete")
{
object idToDelete = e.CommandArgument;
int ID = Convert.ToInt32(idToDelete );
//do stuff with the ID here
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.