dunque, non ho ben capito cosa intendi fare. Forse intendevi creare una templatecolumn nel datagrid tipo:
e inserire
codice:
<asp:DataGrid ID="dgr_dettaglio_carrello" ShowFooter="true" CssClass="style_carrello_datagrid" CellPadding="6" DataKeyField="id" AutoGenerateColumns="false" Width="100%" runat="server"> <ItemStyle CssClass="style_carrello_datagrid" /> <Columns> <asp:TemplateColumn HeaderText="Quantità" > <ItemStyle CssClass="style_carrello_datagrid" /> <FooterStyle CssClass="style_carrello_datagrid" /> <HeaderStyle CssClass="style_carrello_datagrid" /> <ItemTemplate> <asp:TextBox runat="server" id="quantita" MaxLength="2" Columns="2" Text='<%# Container.DataItem("quantita") %>' /> <asp:ImageButton runat="server" CommandName="imgbtn_aggiorna_quantita" ImageAlign="AbsMiddle" ImageUrl="~/Controls/Image_Controls/oggetti_icn_refresh.png" /> <asp:ImageButton CommandName="imgbtn_elimina_prodotto" runat="server" ImageUrl="~/Controls/Image_Controls/crocetta_rossa.png" BorderWidth="0" ImageAlign="AbsMiddle" /> </ItemTemplate> </asp:TemplateColumn>
e poi inserire la dropdownlist direttamente tra i tag itemTemplate del controllo ascx in questione.
Ad ogni modo al momento ho risolto aggiungendo la dropdownlist via codice dopo il binding dei dati del datagrid in questo modo:
codice:
dgr_dettaglio_carrello.Items(indice_riga_spedizione).Cells(1).FindControl("ph_spedizione").Controls.Add(drd_spedizione)
il problema è che adesso vorrei eseguire 2 funzioni che aggiornano e popolano il dropdownlist quando viene inserito nel datagrid e quando si cambia la voce selezionata all'interno della dropdownlist stessa.
le 2 funzioni sarebbero:
codice:
Protected Sub Inizializza_Drd_Spedizione(ByVal sender As DropDownList, ByVal e As EventArgs) Handles drd_spedizione.Load 'elenco servizi di spedizione
la seconda:
codice:
Protected Sub Seleziona_Spedizione(ByVal sender As Object, ByVal e As EventArgs) handles drd_spedizione.SelectedIndexChanged
Il problema è che la dropdownlist non esegue la sub Seleziona_Spedizione(), oppure l'evento viene sovrascritto perchè tramtie la funzione Carica_Datagrid eseguita all'evento mydatagrid.PreRender creo a runtime il dropdownlist stesso.
Capisco di essere stato molto confusionario, ma se solo avete capito qualcosa cerco di semplificare il tutto.