我在formview edittemplate
中使用fileupload控件 <asp:FileUpload ID="fileup_profilfoto" runat="server" />
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ErrorMessage="Sadece şu formatlar (.jpg, .bmp, .png, .gif)" ValidationExpression="^.*\.(jpg|JPG|png|PNG|bmp|BMP|gif|GIF)$" ControlToValidate="fileup_profilfoto" ForeColor="#00C0CC"></asp:RegularExpressionValidator>
它正在工作。但我添加了一个更新面板然后它没有工作,然后我重新启动更新面板。但它仍然返回false(hasfile)
protected void frmviewProfil_ItemUpdating(object sender, FormViewUpdateEventArgs e)
{
try
{
FileUpload fileup_profilfoto = (FileUpload)frmviewProfil.FindControl("fileup_profilfoto");
if (fileup_profilfoto.HasFile)
{
//do something
}
else
{
//do something
}
}
}
总是去其他范围。
答案 0 :(得分:3)
我使用触发器来实现
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="conditional">
<Triggers>
<asp:PostBackTrigger ControlID="Button1" />
</Triggers>
<ContentTemplate>
<asp:Label ID="Label1" runat="server"></asp:Label><br /><br />
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="Button1" runat="server" Text="Upload" OnClick="Button1_Click" />
</ContentTemplate>
</asp:UpdatePanel>
背后的代码
protected void Button1_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile)
{
Label1.Text = FileUpload1.FileName;
}
}
答案 1 :(得分:0)
您是否对fileupload控件的属性执行了任何操作,例如将autopost back值设置为false?如果为假,请尝试将此设置为true。
答案 2 :(得分:0)
当我遇到这个问题时,我遇到了这个问题,并认为我发布了我的问题和解决方案。
确保您尝试上传的文件大于0字节。我尝试上传一些空白文本文件进行测试,每个文件都正确设置了FileName
属性,但HasFile
总是假的。向文件中添加一些文本会为其提供一些内容,并且文件能够成功上传。