FileUpload1.HasFile es falso

Intenté buscar el problema en Internet y veo que todo el mundo está preguntando por el problema del control de FileUpload dentro de UpdatePanel. En primer lugar, no estoy usando un UpdatePanel. A continuación se muestra mi código:

HTML

<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" method="post" runat="server" enctype="multipart/form-data">
    <div>
        <asp:FileUpload ID="fuImport" runat="server" />
        <asp:Button ID="btnImport" runat="server" Text="Import" />
    </div>
    </form>
</body>
</html>

Código detrás

Protected Sub btnImport_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnImport.Click
    If (fuImport.HasFile) Then
        fuImport.SaveAs(My.Settings.FileImportPath & Path.GetFileName(fuImport.FileName))
    End If
End Sub

Veo que fuImport.HasFile es False, pero fuImport.FileName solo da el nombre del archivo. Por ejemplo, si elijoc:\1.txt, da solo"1.txt". ¿Alguien puede decirme por qué fuImport.HasFile es False aunque haya elegido un archivo?

Respuestas a la pregunta(1)

Su respuesta a la pregunta