在VS2005中哪个控件是负责文件上传的?我做的是C/S模式的程序,而非B/S模式的。
找了半天没找见。
使用 OpenFileDialog 对话框,而不是"上传"控件:
OpenFileDialog ofd = new OpenFileDialog();//请在窗口上拖动生成该控件, 此处为了演示而手动声明.
if(ofd.ShowDialog() == DialogResult.OK){//用户点击了"确认"按钮
//ToDo
}
input type="file"
C/S没有上传控件吧
没有这样的控件
C/S,B/S只是模块
不会影响控件的使用。
VS2005有上传的控件。(FileUpLoad)
如果在ToolBox中没有看见,你就直接写代码也可以啊。换个思路嘛!
以下是演示CODE,希望可以帮助你。
Code
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
</head>
<body>
<form id="Form1" runat="server">
<div>
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="BtnUpload" runat="server" Text="上传" OnClick="BtnUpload_Click" />
<asp:Label ID="LabMessage1" runat="server" ForeColor="red" /><br />
<asp:Label ID="LabMessage2" runat="server" />
</div>
</form>
</body>
</html>
Code
public partial class _Default : System.Web.UI.Page
{
protected void BtnUpload_Click(object sender, EventArgs e)
{
bool fileOK = false;
string path = XXXX;
if (FileUpload1.HasFile)
{
String fileExtension = System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
String[] allowedExtensions = { ".gif", ".png", ".bmp", ".jpg" };
for (int i = 0; i < allowedExtensions.Length; i++)
{
if (fileExtension == allowedExtensions[i])
{
fileOK = true;
}
}
}
if (fileOK)
{
//TODO:
}
}
}