24 messaggi dal 12 marzo 2012
Il problema è semplice, non so quanto lo possa essere la soluzione.

ListView per la gestione di una tabella con datasource da DB SQL.
Uno dei campi contiene il valore che è la chiave di un'altra tabella del database.

Ho bisogno che sia in inserimento che in modifica questo campo non sia editato, ma scelto dalla tabella collegata.

Esempio:
Tabella gestita con ListView: Gare
Campi (la faccio breve)
Codice
Nome
Data
Percorso

Il campo Percorso è il Codice della Tabella: Percorsi
Codice Percorso
Nome Percorso
.....
.....

Sull'editing del campo Percorso vorrei si aprisse la dropdown della tabella percorsi con la visualizzazione sia del codice che del nome ed una volta selezionata la riga, il codice percorso mi deve riempire il campo Percorso della Tabella Gare.

Grazie come sempre dell'aiuto.

Claudio
24 messaggi dal 12 marzo 2012
Ho trovato la soluzione e la posto nel caso interessi qualcuno.

1) nella definizione della ListView inserire OnItemInserting.....:
<asp:ListView ID="ListView1" runat="server" DataKeyNames="CodGara" 
        DataSourceID="SqlDataSource1" InsertItemPosition="FirstItem"         OnItemInserting="ListView1_ItemInserting">


2) strutturare l'ItemTemplate come segue:
                    <asp:DropDownList ID="ddlPercorsi" DataTextField="NomePercorso" runat="server" DataSourceID="SqlDataSource2" 
                         DataTextValue="CodicePercorso"
                         AppendDataBoundItems="true" AutoPostBack="true" CssClass="perGara" DataValueField="CodicePercorso">
                        <asp:ListItem Value=""></asp:ListItem>
                        </asp:DropDownList>


Infine il C#

    protected void ListView1_ItemInserting(object sender, ListViewInsertEventArgs e)
    {
        DropDownList ddlPercorsi = (DropDownList)ListView1.InsertItem.FindControl("ddlPercorsi");
        if (ddlPercorsi != null)
            e.Values["CodicePercorso"] = ddlPercorsi.SelectedValue;
    }


La tabella della ListView contiene il campo "CodicePercorso" ma viene mostrato il corrispondente "NomePercorso" della tabella "Percorsi" che compila la dropdown.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.