如何仅使用 FileUpload 代码隐藏进行上传?我的控件是代码隐藏的,因为我有 Dropdown_SelectedIndexChanged 并且需要生成各种数量的控件。我可以很好地列出控件并将文件和文本附加到 txtbox:
private void SetChildrenCountControls(int total)
{
for (int i = 0; i < total; i++)
{
var tbBirthDate = new TextBox();
tbBirthDate.ID = "tbBirthDate_" + (i + 1);
tbBirthDate.CssClass = "tbSister_input";
tbBirthDate.EnableViewState = true;
FileUpload upload = new FileUpload();
upload.ID = "imgUpload_" + (i + 1);
upload.CssClass = "tbSister_upload";
upload.EnableViewState = true;
ChildrenCountTextPanel.Controls.Add(tbBirthDate);
ChildrenCountTextPanel.Controls.Add(upload);
}
}
并且可以通过以下方式获取文本框中的输入文本:
protected void lbFamilySave_Click(object sender, EventArgs e)
{
var countSisters = ChildrenCountTextPanel.Controls.OfType();
string sisterBirth = string.Empty;
foreach (var sister in countSisters)
{
if (sister.ID.Contains("tbBirthDate_"))
sisterBirth = sister.Text;
}
}
如何从 FileUpload 控件获取文件?上面的 FileUpload 似乎无法做到。
在下面的点击事件中,您得到的是文本框而不是文件上传控件
btn_protected void lbFamilySave_Click(object sender, EventArgs e)
{
var countSisters = ChildrenCountTextPanel.Controls.OfType();
文件上传控件是这种类型System.Web.UI.WebControls.FileUpload
所以请获取 FileUpload 控件然后执行以下操作:
if (myFileUpload.HasFile)
{
string savePath = @"C:\Temp\" + myFileUpload.FileName;
myFileUpload.SaveAs(savePath);
}
Tôi là một lập trình viên xuất sắc, rất giỏi!