指引网

当前位置: 主页 > 编程开发 > .NET >

WebControl中使用FileUpload的问题

来源:网络 作者:佚名 点击: 时间:2017-11-17 03:52
[摘要] 前些天在开发一个WebControl中,向控件中增加了一个FileUpload,竟然发现此时的FileUpload无法获取到FileName值。 测试代码如下: private FileUpload_FileUpload; public TestControl() ... { _FileUpload = new F

    前些天在开发一个WebControl中,向控件中增加了一个FileUpload,竟然发现此时的FileUpload无法获取到FileName值。

    测试代码如下:

private FileUpload _FileUpload;

public TestControl()

{

    _FileUpload 
= new FileUpload();

    _FileUpload.EnableViewState 
= true;

Button imageSelectbutton 
= new Button();

this.Controls.Add(_FileUpload);

this.Controls.Add(imageSelectbutton);

imageSelectbutton.Click 
+= new EventHandler(imageSelectbutton_Click);

}


void imageSelectbutton_Click(object sender, EventArgs e)

{

if ( string.IsNullOrEmpty( _FileUpload.FileName.Trim() ) )

//竟然一直为空 }

}


这个问题比较奇怪,一直没见过这个问题,对于页面的ViewState也确实开启着,但是为什么竟然没有值呢。

于是采用比较法,另外建了一个页面只拖一个FileUpload上去,比较发现了问题。
在控件中的FileUpload页面,有点差别Enctype属性没有。
于是在控件中增加一行

this.Page.Form.Enctype = "multipart/form-data";  

竟然就好了。
------分隔线----------------------------