Ho un problema con le CRUD del GridView, in pratica se personalizzo i boundField i metodi CRUD non funzionano... la gridview è agganciata ad una drop che fa da filtro (tra due tabelle), posto un po di codicce:

.aspx:
codice:
<asp:DropDownList ID="DdlFiltroGridV" runat="server" AutoPostBack="true" DataSourceID="AccessDataSource1" 
DataTextField="NomeDestinazione" DataValueField="id_destinazione" AppendDataBoundItems="true"> 
<asp:ListItem Text="[Seleziona]" Value="-1"></asp:ListItem> 
</asp:DropDownList> 

<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="~/App_Data/DbCataloghi.mdb" 
SelectCommand="SELECT [id_destinazione], [NomeDestinazione] FROM [destinazioni]"> 
</asp:AccessDataSource> 

 
<asp:AccessDataSource ID="DbSourceCataloghi1" runat="server" DataFile="~/App_Data/DbCataloghi.mdb" 
SelectCommand="SELECT cataloghi.id AS [id], cataloghi.NomeCatalogo, cataloghi.percorsofile, cataloghi.visibile, cataloghi.DataCaricamento, cataloghi.id_destinazione, cataloghi.Utente, cataloghi.DataViaggio, cataloghi.id_struttura, destinazioni.NomeDestinazione AS [NomeDestinazione Destinazioni] FROM (destinazioni INNER JOIN cataloghi ON cataloghi.id_destinazione = destinazioni.id_Destinazione) WHERE (cataloghi.id_destinazione = ?) OR (? = -1)" 
DeleteCommand="DELETE FROM [cataloghi] WHERE [id] = ?" 
InsertCommand="INSERT INTO [destinazioni] ([id_destinazione], [NomeDestinazione], [Utente]) VALUES (?, ?, ?)" 
UpdateCommand="UPDATE [cataloghi] SET [NomeCatalogo] = ?, [PercorsoFile] = ?, [Visibile] = ?, [DataCaricamento] = ?, [id_destinazione] = ?, [utente] = ?, [DataViaggio] = ?, [id_Struttura] = ? WHERE [id] = ?" 
OldValuesParameterFormatString="original_{0}"> 
<SelectParameters> 
<asp:ControlParameter ControlID="DdlFiltroGridV" Name="id_destinazione" PropertyName="SelectedValue" Type="Int32" /> 
<asp:ControlParameter ControlID="DdlFiltroGridV" Name="?" PropertyName="SelectedValue" /> 
</SelectParameters> 
<DeleteParameters> 
<asp:Parameter Name="original_id_destinazione" Type="Int32" /> 
<asp:Parameter Name="original_NomeDestinazione" Type="String" /> 
<asp:Parameter Name="original_NomeDestinazione" Type="String" /> 
<asp:Parameter Name="original_Utente" Type="String" /> 
<asp:Parameter Name="original_Utente" Type="String" /> 
</DeleteParameters> 
<UpdateParameters> 
<asp:Parameter Name="NomeCatalogo" Type="String" /> 
<asp:Parameter Name="PercorsoFile" Type="String" /> 
<asp:Parameter Name="Visibile" Type="Boolean" /> 
<asp:Parameter Name="DataCaricamento" Type="DateTime" /> 
<asp:Parameter Name="id_destinazione" Type="Int32" /> 
<asp:Parameter Name="utente" Type="String" /> 
<asp:Parameter Name="DataViaggio" Type="DateTime" /> 
<asp:Parameter Name="id_Struttura" Type="Int32" /> 
<asp:Parameter Name="id" Type="Int32" /> 
</UpdateParameters> 
<InsertParameters> 
<asp:Parameter Name="id_destinazione" Type="Int32" /> 
<asp:Parameter Name="NomeDestinazione" Type="String" /> 
<asp:Parameter Name="Utente" Type="String" /> 
</InsertParameters> 
</asp:AccessDataSource> 

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" 
AllowSorting="True" CellPadding="4" 
DataSourceID="DbSourceCataloghi1" PageSize="5" EnableModelValidation="True" 
ForeColor="#333333" GridLines="None" AutoGenerateColumns="False" > 
<AlternatingRowStyle BackColor="White" /> 
<Columns> 

<asp:CommandField ButtonType="Button" CancelText="Annulla" DeleteText="Elimina" 
EditText="Aggiorna" ShowDeleteButton="True" ShowEditButton="True" 
UpdateText="Salva" /> 
<asp:BoundField DataField="utente" HeaderText="Utente" /> 
<asp:BoundField DataField="DataCaricamento" HeaderText="Data Inserzione" DataFormatString="{0:d}" HtmlEncode="false" /> 
<asp:BoundField DataField="NomeCatalogo" HeaderText="Nome" /> 
<asp:BoundField DataField="Nomedestinazione Destinazioni" 
HeaderText="Destinazione" /> 
<asp:BoundField DataField="DataViaggio" HeaderText="Data Viaggio" DataFormatString="{0:d}" HtmlEncode="false" /> 
</Columns> 
<EditRowStyle BackColor="#2461BF" /> 
<EmptyDataTemplate> 
<span class="style1">Nessuna Offerta Presente</span> 
</EmptyDataTemplate> 
<FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> 
<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" /> 
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" /> 
<RowStyle BackColor="#EFF3FB" /> 
<SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" /> 
</asp:GridView>

nel code behind: 

if (!this.IsPostBack) 
{ 
this.DropDownList1.Items.Add(new ListItem("[Selezionare]", "-1")); 
OleDbCommand command = null; 
using (command = new OleDbCommand("SELECT id_destinazione, NomeDestinazione FROM destinazioni", this._Connection)) 
{ 
try 
{ 
this.DropDownList1.DataSource = command.ExecuteReader(); 
this.DropDownList1.DataBind(); 
} 

catch (Exception) 
{ 
throw; 
} 
} 
} 

.. 
... 
.. 

protected void ddlStrutture_SelectedIndexChanged(object sender, EventArgs e) 
{ 
Int32 value = System.Convert.ToInt32(this.DropDownList1.SelectedValue); 
this.ddlStruttura.Items.Clear(); 
this.ddlStruttura.Items.Add(new ListItem("[Seleziona]", "-1")); 
this.ddlStruttura.Items.Add(new ListItem("Inserisci Nuovo Agriturismo", "1")); 
if (value == -1) 
{ 
this.ddlStruttura.Enabled = false; 
} 
else 
{ 
OleDbCommand command = null; 
using (command = new OleDbCommand("SELECT * FROM strutture WHERE id_destinazione = @id_destinazione", this._Connection)) 
{ 
command.Parameters.AddWithValue("id_destinazione", value); 

try 
{ 
this.ddlStruttura.DataSource = command.ExecuteReader(); 
this.ddlStruttura.DataBind(); 
} 

catch (Exception) 
{ 
throw; 
} 

this.ddlStruttura.Enabled = true; 
} 
} 

if (value == 1) 
{ 
txtAgriturismo.Visible = true; 
txtAgriturismo.Enabled = true; 
} 

}
avete qualche idea del perchè succede questo? premetto che uso Visual Web Dev Exp e il Db è in Access...

grazie!