Using a checkbox inside a repeater control

I tried to do this from yesterday, but I can’t come up with a solution. I have a repeater containing a checkbox and file upload, this repeater repeats many times depending on the contents of my table. When the checkbox for downloading a file is checked, it should not check the file download. I can think of no way to do this. Any ideas? Here is the code.

Grade:

protected void UploadButton_Click(object sender, EventArgs e)
{
    String savePath = @"~/files/";
    try
    {
        foreach (RepeaterItem item in rptVrijstellingen.Items)
        {               
            FileUpload file=(FileUpload)item.FindControl("FileUpload1");
            HiddenField uid = (HiddenField)item.FindControl("hiddenid");
            CheckBox ch = (CheckBox)item.FindControl("CBupload");
            if(ch.Checked)
                Response.Write("checked");
            else
            {
                if (file.HasFile)
                {
                  String fileName = file.FileName;
                  savePath += fileName;
                  file.SaveAs(Server.MapPath(savePath + fileName));
                  tblBijlage s = new tblBijlage();
                  s.bijlageTitel = fileName;
                  s.bijlageURL = savePath;
                  s.bijlageType = "1";
                  s.fk_externvakID = Convert.ToInt16(uid.Value);
                  BLLstudent.insertFile(s);
                }
                else
                  throw new Exception("Gelieve bij alle vakken een file toe te voegen of gegeven aan mevrouw Van Orlé aan te vinken en een afspraak te maken.");
             }
             Response.Redirect("s_student_Ovrijstellingen.aspx");
          }
      }
      catch (Exception ex)
      {
          UploadStatusLabel.Text = ex.Message;                  
      }
}

View:

<!-- language: xml -->
<asp:Repeater ID="rptVrijstellingen" runat="server">
   <HeaderTemplate></HeaderTemplate>
   <ItemTemplate>
      <h2><%# Eval("tblExternVak.ExternvakNaam") %></h2>
      <asp:HiddenField ID="hiddenid" Value='<%# Eval("tblExternVak.pk_externvakID") %>' runat="server" />       
      <h4>Selecteer een bestand om te uploaden:</h4>
      Gelieve het bestand de naam te geven van het overeenkomstige vak om de verwerking vlot te laten verlopen.
       <br /><br />  <br />
       <asp:FileUpload id="FileUpload1" runat="server"></asp:FileUpload>
       <br />
       <asp:CheckBox id="CBupload" runat="server" /><asp:Label id="lblUpload" runat="server"> Geleverd aan Mevrouw Van Orlé</asp:Label>
       <hr />
    </ItemTemplate>
    <SeparatorTemplate><hr /></SeparatorTemplate>
</asp:Repeater>
<asp:Label id="UploadStatusLabel" runat="server" ForeColor="Red"></asp:Label>
<br /><br />
<asp:Button id="UploadButton" Text="volgende > " OnClick="UploadButton_Click" runat="server"></asp:Button>  

How can you see his problem with logic ... Can someone give me an example on how to solve this problem?

+5
source share
1 answer

You are likely to become attached to the repeater during page load. Do you check PostBack?

, , , , , . , - Load:

if(!Page.IsPostBack)
{
    //Fill repeater with items here
}

, , , false.

+3

All Articles