He intentado hacer esto desde ayer, pero no puedo pensar en una solución. Tengo un repetidor que contiene una casilla de verificación y una carga de archivo, este repetidor se repite varias veces dependiendo del contenido de mi tabla. Cuando se marca la casilla debajo de la carga del archivo, no debe verificar la carga del archivo. No puedo pensar en ninguna forma de hacer esto. ¿Algunas ideas? Aquí está el código.Usando la casilla de verificación dentro de un control de repetidor
La clase:
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;
}
}
La vista:
<!-- 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>
Como u puede ver es sólo un problema de lógica ... ¿Puede alguien darme un ejemplo de cómo resolver esto?
Pruebe la configuración 'EnableViewState =" true "' para el control CheckBox – sll
, ¿la casilla de verificación controla cada archivo de carga? oO –
probado, no funcionó :( –