0

我正在通过中继器显示 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 />
4

1 回答 1

2

如果我了解您要执行的操作,您可以尝试以下操作:

像这样向中继器添加一个按钮:

 <asp:Button ID="yourButton" runat="server"  CommandName="delete" CommandArgument='<%# Eval("id")' />

然后在中继器的 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
       }
       }
于 2012-04-22T21:53:34.110 回答