Ciao a tutti!

Sto diventando pazza! Non riesco a fare una cosa. In pratica, ho un gridview che mi restituisce i risultati da database. Sull'ultima colonna del mio gridview c'è un FileUpload.
Vi posto il codice che uso nel file .cs:

codice:
protected void UploadButton_Click(object sender, EventArgs e)
    {
        // Save the uploaded file to an "Uploads" directory
        // that already exists in the file system of the 
        // currently executing ASP.NET application.  
        // Creating an "Uploads" directory isolates uploaded 
        // files in a separate directory. This helps prevent
        // users from overwriting existing application files by
        // uploading files with names like "Web.config".
        string saveDir = @"\immagini\usato\";

        // Get the physical file system path for the currently
        // executing application.
        string appPath = Request.PhysicalApplicationPath;

        // Before attempting to save the file, verify
        // that the FileUpload control contains a file.
        if (FileUpload1.HasFile)

        {
            string savePath = appPath + saveDir +
                Server.HtmlEncode(FileUpload1.FileName);

            // Call the SaveAs method to save the 
            // uploaded file to the specified path.
            // This example does not perform all
            // the necessary error checking.               
            // If a file with the same name
            // already exists in the specified path,  
            // the uploaded file overwrites it.
            FileUpload1.SaveAs(savePath);

            // Notify the user that the file was uploaded successfully.
            UploadStatusLabel.Text = FileUpload1.FileName+" caricato correttamente.";

        }
        else
        {
            // Notify the user that a file was not uploaded.
            UploadStatusLabel.Text = "Devi specificare un file!";
        }
    }
e questo invece è quello che ho all'interno del GridView:

codice:
  <asp:TemplateField HeaderText="Carica foto">
                        <EditItemTemplate>
                            <asp:FileUpload ID="FileUpload1" runat="server" CssClass="inputsubmit1" />

       



       <asp:Button id="UploadButton" 
           Text="Carica file"
           OnClick="UploadButton_Click"
           runat="server" CssClass="inputsubmit1">
       </asp:Button>    

       <hr />

       <asp:Label id="UploadStatusLabel"
           runat="server">
       </asp:Label>
                        </EditItemTemplate>
                        <ItemTemplate>
                            
                        </ItemTemplate>
                    </asp:TemplateField>
Ora... se inserisco il UploadFile fuori dal GridView funziona tutto perfettamente... ma se lascio all'interno del gridview mi vien fuori questo errore di compilazione:


codice:
Errore di compilazione 
Descrizione: Errore durante la compilazione di una risorsa necessaria per soddisfare la richiesta. Rivedere i dettagli relativi all'errore e modificare in modo appropriato il codice sorgente. 

Messaggio di errore del compilatore: CS0103: Il nome 'FileUpload1' non esiste nel contesto corrente.

Errore nel codice sorgente:

 

Riga 39:         // Before attempting to save the file, verify
Riga 40:         // that the FileUpload control contains a file.
Riga 41:         if (FileUpload1.HasFile)
Riga 42: 
Riga 43:         {

Come faccio a risolvere? Penso che basterebbe indirizzare correttamente FileUpload1 nel file .cs ... ma come si fa?

Ragazzi aiutatemi perché ci sto perdendo la testa... Grazie a chi mi darà una mano!
Un bacio!
Fanny