C# 在网格视图中添加新行时控制FileUpload类型时出错
我在gridview中使用fileUpload控件。我使用了以下代码,但它在执行时出现异常 我得到异常的代码部分:C# 在网格视图中添加新行时控制FileUpload类型时出错,c#,asp.net,file-upload,C#,Asp.net,File Upload,我在gridview中使用fileUpload控件。我使用了以下代码,但它在执行时出现异常 我得到异常的代码部分: FileUpload file = (FileUpload)gridFile.Rows[i].Cells[0].FindControl("fileUpload1"); 例外情况: 无法将“System.Web.UI.WebControl.FileUpload”类型的对象强制转换为“FileUpload.FileUpload”类型 代码: 受保护的void AddNewRow()
FileUpload file = (FileUpload)gridFile.Rows[i].Cells[0].FindControl("fileUpload1");
例外情况:
无法将“System.Web.UI.WebControl.FileUpload”类型的对象强制转换为“FileUpload.FileUpload”类型
代码:
受保护的void AddNewRow()
{
如果(ViewState[“CurrentTable”]!=null)
{
DataTable dt=(DataTable)视图状态[“CurrentTable”];
数据行dr=null;
如果(dt.Rows.Count>0)
{
dr=dt.NewRow();
dt.Rows.Add(dr);
视图状态[“当前表”]=dt;
对于(int i=0;i该消息告诉您,对象的运行时类型与您尝试强制转换的运行时类型不同。您需要确保变量文件为System.Web.UI.WebControls.FileUpload而不是FileUpload.FileUpload。您可能定义的类与框架中的类同名。请使用完全限定的名称类型来解析那个
编辑:
Mysterio11为您提供了一个示例。如果您不想使用完整的类型名,也可以尝试使用不同的名称空间。在强制使用时
System.Web.UI.WebControls.FileUpload file=(System.Web.UI.WebControls.FileUpload)gridFile.Rows[i].Cells[0].FindControl("fileUpload1");
强制转换时,请使用System.Web.UI.WebControls.FileUpload file=(System.Web.UI.WebControls.FileUpload)gridFile.Rows[i].Cells[0].FindControl(“fileUpload1”);尝试以字符串形式发送数据。
System.Web.UI.WebControls.FileUpload file=(System.Web.UI.WebControls.FileUpload)gridFile.Rows[i].Cells[0].FindControl("fileUpload1");