Controle HtmlInputFile ASP.NET

Definição e uso

O controle HtmlInputFile é usado para controlar o elemento <input type="file">, que é usado para carregar arquivos para o servidor.

Atributo

Atributo Descrição
Accept Lista de tipos MIME aceitos.
Attributes Retorna todos os nomes e valores dos atributos do elemento.
Disabled Valor booleano que indica se o controle está desativado. O valor padrão é false.
id ID único do controle.
MaxLength Número máximo de caracteres permitidos no elemento.
Name Nome do elemento.
PostedFile Obtém acesso ao arquivo carregado pelo cliente.
runat Deve ser configurado como "server" para que o controle seja um controle do servidor.
Size Largura do elemento.
Style Define ou retorna a propriedade CSS aplicada ao controle.
TagName Retorna o nome da etiqueta do elemento.
Type Tipo do elemento.
Value Valor do elemento.
Visible Valor booleano que indica se o controle é visível.

Exemplo

Neste exemplo, declaramos um controle HtmlInputFile, um controle HtmlInputButton e três controles HtmlGeneric no arquivo .aspx. Quando o botão de envio é acionado, a subrotina submit é executada. Quando o arquivo em si é carregado para o diretório c do servidor, o nome do arquivo e o tipo do arquivo são exibidos na página:

<script runat="server">
Sub submit(Sender as Object, e as EventArgs)
  fname.InnerHtml=MyFile.PostedFile.FileName
  clength.InnerHtml=MyFile.PostedFile.ContentLength
  MyFile.PostedFile.SaveAs("c:\uploadfile.txt")
Fim Sub
</script>
<html>
<body>
<form method="post">
enctype="multipart/form-data" runat="server">
<p>
Selecione o arquivo para upload no servidor:
<input id="MyFile" type="file" size="40" runat="server"> 
</p>
<p>
<input type="submit" value="Upload!"/> OnServerclick="submit" runat="server">
</p>
<p>
<div runat="server">
  FileName: <span id="fname" runat="server"/><br />
  ContentLength: <span id="clength" runat="server"/> bytes
</div>
</p>
</form>
</body>
</html>