allora forse ho capito.
ho visto che l'ObjectDataSource accetta i metodi per la modifica e l'eliminazione dei dati.
questo è il mio gridview:
codice:
    <asp:GridView ID="GridView1" runat="server" DataSourceID="ObjectDataSource1" 
        AllowSorting="True" AutoGenerateColumns="False" 
        AutoGenerateDeleteButton="True">
        <Columns>
            <asp:BoundField DataField="id" HeaderText="ID" ReadOnly="True" SortExpression="id" />
            <asp:BoundField DataField="entrate" HeaderText="Entrate" ReadOnly="False" SortExpression="entrate" />
            <asp:BoundField DataField="uscite" HeaderText="Escite" ReadOnly="False" SortExpression="uscite" />
            <asp:BoundField DataField="causale" HeaderText="Causale" ReadOnly="False" SortExpression="causale" />
            <asp:BoundField DataField="data" HeaderText="Data" ReadOnly="False" SortExpression="data" />
        </Columns>
    </asp:GridView>
questo l'objectdatasource:
codice:
    <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" TypeName="Matteo.Connessione"
        SelectMethod="leggiRecord" DeleteMethod="eliminaRecord">
        <DeleteParameters>
            <asp:Parameter Name="id" Type="Int32" />
        </DeleteParameters>
    </asp:ObjectDataSource>
questa la classe per le query:
codice:
        public static MySqlConnection getConnection()
        {
            string db = ".........;";
            MySqlConnection conn = null;
            try
            {
                conn = new MySqlConnection(db);
                conn.Open();
            }
            catch (MySqlException e)
            {
                Console.Write(e.Message);
            }
            return conn;
        }
......
        public int eliminaRecord(int id)
        {
            string sql = "DELETE FROM movimenti WHERE ID='" + id + "'";
            MySqlConnection conn = null;
            MySqlCommand cmd = null;
            try
            {
                conn = Connessione.getConnection();
                cmd = new MySqlCommand(sql, conn);
                cmd.ExecuteNonQuery();
            }
            catch (MySqlException e)
            {
                Console.Write(e.Message);
            }
            return id;
        }
quando clicco sul tasto delete nel gridview nn succede nulla.
cos'altro mi manca?