Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    6

    Idee confuse di neofita su GridviewFormview con funzione editing

    Salve a tutti, e grazie in anticipo. Mi affaccio al mondo asp.net, e ovviamente ho le idee confuse per usare un eufemismo :-).
    Sto cercando di creare un sito per editare un semplice database access di raccolta dati.

    Con i fantastici strumenti asp.net a disposizione, (prima lo facevo in classic asp) riesco con una certa facilità a visualizzare i dati delle tabelle del db in una pagina asp.net, ed anche ad editarli.

    Il problema è che gli strumenti automatici generano form solo con textbox, come faccio a modificare il form sostituendo le textbox con una casella a discesa, o pulsanti di opzione o altro?

    Finora sono riuscito a personalizzare i file e ad inserire i criteri di controllo sui campi, ma sempre sulle textxbox.

    Potete postarmi un semplice esempio di codice?

    Grazie
    papirob
    papirob

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    ci sono i template per ogni stato della Grid.

    domani ti posto un po' di codice.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    6
    Ok, grazie
    papirob

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    gridview e formview sono due classi diverse...quale stai usando ?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    6
    Ho provato entrambe le classi, ed anche il Detailsview, sto cercando di imparare ad usarli. La mia esigenza al momento è quella di creare un form di inserimento dati in un db access. I form sono più di uno, per cui stavi cercando un metodo per abbreviare il lavoro. Gli strumenti automatici funzionano bene per la lettura dei dati, e sono riuscito ad usarli senza grosse difficoltà. Il problema è creare una maschera di modifica dei dati. Con i template nessun problema con textbox, ho anche inserito controlli per i campi obbligatori ecc... quello che non riesco a fare è inserire una casella a discesa, o pulsanti di opzione invece di una texbox.
    papirob

  6. #6

  7. #7
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    ed anche questa:

    http://stackoverflow.com/questions/1...ititemtemplate


    ti chiariranno un po' la dinamica del binding in un EditItemTemplate.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    6
    Grazie, ci provo
    papirob

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    6
    Sto facendo esperimenti, ma ricevo un errore che no riesco a risolvere. E' un semplice form che visualizza i dati da una tbl di un db, con l'opzione per la modifica.
    Finchè lascio per l'editing le texbox generate, tutto funziona regolarmente. Come sostituisco alla textbox una dropdownlist ricevo il seguente errore:

    SelectedValue in 'DropDownList1' non valido, poiché non è incluso nell'elenco di elementi.
    Nome parametro: value

    Di seguito ti posto il codice:

    Inizio Codice

    codice:
    <%@ Page Language="C#" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <script runat="server">
    
    </script>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
        
            Test edit 
            formview</div>
        <asp:AccessDataSource ID="AccessDataSource1" runat="server" 
            ConflictDetection="CompareAllValues" DataFile="~/DbTest.mdb" 
            DeleteCommand="DELETE FROM [TblProva2] WHERE [ID] = ? AND (([Sesso] = ?) OR ([Sesso] IS NULL AND ? IS NULL)) AND (([dataNascita] = ?) OR ([dataNascita] IS NULL AND ? IS NULL)) AND (([Provenienza] = ?) OR ([Provenienza] IS NULL AND ? IS NULL)) AND (([dataInserimento] = ?) OR ([dataInserimento] IS NULL AND ? IS NULL))" 
            InsertCommand="INSERT INTO [TblProva2] ([ID], [Sesso], [dataNascita], [Provenienza], [dataInserimento]) VALUES (?, ?, ?, ?, ?)" 
            OldValuesParameterFormatString="original_{0}" 
            SelectCommand="SELECT * FROM [TblProva2]" 
            UpdateCommand="UPDATE [TblProva2] SET [Sesso] = ?, [dataNascita] = ?, [Provenienza] = ?, [dataInserimento] = ? WHERE [ID] = ? AND (([Sesso] = ?) OR ([Sesso] IS NULL AND ? IS NULL)) AND (([dataNascita] = ?) OR ([dataNascita] IS NULL AND ? IS NULL)) AND (([Provenienza] = ?) OR ([Provenienza] IS NULL AND ? IS NULL)) AND (([dataInserimento] = ?) OR ([dataInserimento] IS NULL AND ? IS NULL))">
            <DeleteParameters>
                <asp:Parameter Name="original_ID" Type="Int32" />
                <asp:Parameter Name="original_Sesso" Type="String" />
                <asp:Parameter Name="original_Sesso" Type="String" />
                <asp:Parameter Name="original_dataNascita" Type="String" />
                <asp:Parameter Name="original_dataNascita" Type="String" />
                <asp:Parameter Name="original_Provenienza" Type="String" />
                <asp:Parameter Name="original_Provenienza" Type="String" />
                <asp:Parameter Name="original_dataInserimento" Type="String" />
                <asp:Parameter Name="original_dataInserimento" Type="String" />
            </DeleteParameters>
            <InsertParameters>
                <asp:Parameter Name="ID" Type="Int32" />
                <asp:Parameter Name="Sesso" Type="String" />
                <asp:Parameter Name="dataNascita" Type="String" />
                <asp:Parameter Name="Provenienza" Type="String" />
                <asp:Parameter Name="dataInserimento" Type="String" />
            </InsertParameters>
            <UpdateParameters>
                <asp:Parameter Name="Sesso" Type="String" />
                <asp:Parameter Name="dataNascita" Type="String" />
                <asp:Parameter Name="Provenienza" Type="String" />
                <asp:Parameter Name="dataInserimento" Type="String" />
                <asp:Parameter Name="original_ID" Type="Int32" />
                <asp:Parameter Name="original_Sesso" Type="String" />
                <asp:Parameter Name="original_Sesso" Type="String" />
                <asp:Parameter Name="original_dataNascita" Type="String" />
                <asp:Parameter Name="original_dataNascita" Type="String" />
                <asp:Parameter Name="original_Provenienza" Type="String" />
                <asp:Parameter Name="original_Provenienza" Type="String" />
                <asp:Parameter Name="original_dataInserimento" Type="String" />
                <asp:Parameter Name="original_dataInserimento" Type="String" />
            </UpdateParameters>
        </asp:AccessDataSource>
        
    
        <asp:DetailsView ID="DetailsView1" runat="server" AllowPaging="True" 
            AutoGenerateRows="False" BackColor="#DEBA84" BorderColor="#DEBA84" 
            BorderStyle="None" BorderWidth="1px" CellPadding="3" CellSpacing="2" 
            DataKeyNames="ID" DataSourceID="AccessDataSource1" EnableModelValidation="True" 
            Height="50px" Width="125px">
            <EditRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="White" />
            <Fields>
                <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" 
                    ReadOnly="True" SortExpression="ID" />
                <asp:BoundField DataField="Sesso" HeaderText="Sesso" SortExpression="Sesso" />
                <asp:BoundField DataField="dataNascita" HeaderText="dataNascita" 
                    SortExpression="dataNascita" />
    
                <asp:TemplateField HeaderText="Provenienza" SortExpression="Provenienza">
                    <EditItemTemplate>
             <asp:DropDownList ID="DropDownList1" runat="server" SelectedValue='<%# Bind("Provenienza") %>' AutoPostBack="True">
                <asp:ListItem>Roma</asp:ListItem>
                <asp:ListItem>Milano</asp:ListItem>
            </asp:DropDownList>
                     </EditItemTemplate>
                     <InsertItemTemplate>
                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Provenienza") %>'></asp:TextBox>
                    </InsertItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("Provenienza") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:BoundField DataField="dataInserimento" HeaderText="dataInserimento" 
                    SortExpression="dataInserimento" />
                <asp:CommandField ShowEditButton="True" />
            </Fields>
            <FooterStyle BackColor="#F7DFB5" ForeColor="#8C4510" />
            <HeaderStyle BackColor="#A55129" Font-Bold="True" ForeColor="White" />
            <PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" />
            <RowStyle BackColor="#FFF7E7" ForeColor="#8C4510" />
        </asp:DetailsView>
        
    
        
    
        
    
        </form>
    </body>
    </html>
    Il problema è in questa sezione:

    codice:
             <asp:DropDownList ID="DropDownList1" runat="server" SelectedValue='<%# Bind("Provenienza") %>' AutoPostBack="True">
                <asp:ListItem>Roma</asp:ListItem>
                <asp:ListItem>Milano</asp:ListItem>
            </asp:DropDownList>
    Considera che nel db i dati nella colonna di test sono già presenti, io devo semplicemente far editare il dato già inserito con un testo preordinato, motivo per cui non posso usare una texbox.
    Vorrei più che altro capire il principio.
    Grazie
    papirob

  10. #10
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    scusami ma devi imparare a mettere il codice nei tag CODE. cosi' non si capisce...

    domani edito io

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.