Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Detailsview e aggiornamento Gridview

    Hola!
    Ho inserito una gridview che mi visualizza i dati contenuti in una tabella

    Sotto ho messo una detailsview con la quale visualizzo, modifico, inserisco e cancello i record da questa tabella.

    Dato che sono alle prime armi con .NET ho alcune perplessità e alcuni dubbi:
    - una volta eseguita l'operzione desiderata attraverso la detailsview, vorrei che mi si aggiornasse anche il contenuto della gridview: come posso fare?

    Grazie &

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    338
    mi aggiungo alla richiesta purtroppo, proprio oggi ho iniziato una pagina uguale e mi sono trovato di fronte lo stesso 'malfunzionamento'

    trovato

    [nome gridview].DataBind();

    aggiorna il suo contenuto

  3. #3
    In teoria bisogna fare il databind sulla gridview ad ogni evento:
    GridView1.DataBind();

    Ti posto il mio codice:
    [code]<
    codice:
    asp: DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" BackColor="White"
            BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" CellPadding="4" DataKeyNames="cod"
            DataSourceID="SqlDataSource2" ForeColor="Black" GridLines="Vertical" Height="50px"
            Width="800" OnItemInserted="aggiornaTabella">
            <FooterStyle BackColor="#CCCC99" />
            <EditRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
            <RowStyle BackColor="#F7F7DE" />
            <PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
            <Fields>
                <asp:BoundField DataField="cod" HeaderText="cod" ReadOnly="True" SortExpression="cod" />
                <asp:BoundField DataField="tipologia" HeaderText="tipologia" SortExpression="tipologia" />
                <asp:BoundField DataField="descrizione" HeaderText="descrizione" SortExpression="descrizione" />
                <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowInsertButton="True" />
            </Fields>
            <HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
            <AlternatingRowStyle BackColor="White" />
        </asp: DetailsView>
    e nel .cs:
    codice:
    private void aggiornaTabella(object source, ObjectDataSourceStatusEventArgs e)
        {
            GridView1.DataBind();
        }

    ma così facendo mi genera un "Compilation Error" qui:
    codice:
    <asp: DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" BackColor="White"
            BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" CellPadding="4" DataKeyNames="cod"
            DataSourceID="SqlDataSource2" ForeColor="Black" GridLines="Vertical" Height="50px"
            Width="800" OnItemInserted="aggiornaTabella">
    Evidentemenste ho sbagliato qualcosa... ma .... cosa?

  4. #4
    RISOLTO:

    inserendo questo nel detailsview:
    Codice PHP:
    OnItemDeleted="DetailsView1_ItemDeleted" OnItemInserted="DetailsView1_ItemInserted" OnItemUpdated="DetailsView1_ItemUpdated"
    e queste nel .cs:

    Codice PHP:
    protected void DetailsView1_ItemInserted(object senderDetailsViewInsertedEventArgs e)
        {
            
    GridView1.DataBind();
        }
        protected 
    void DetailsView1_ItemUpdated(object senderDetailsViewUpdatedEventArgs e)
        {
            
    GridView1.DataBind();
        }
        protected 
    void DetailsView1_ItemDeleted(object senderDetailsViewDeletedEventArgs e)
        {
            
    GridView1.DataBind();
        } 
    Sbagliavo in quanto creavo io una funzione apposita, mentre bisogna far lavorare un po' visual studio :
    andando in designer e aprendo le finesta delle proprietà del detailview, cliccando sull'icona a forma di fulmine vengono visualizzati tutti gli eventi possibili. Cliccando su quello interessato viene creato automaticamente il gestore dell'evento. A questo punto si mette dentro la funzione GridView1.DataBind(); e il gioco è fatto.

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    338
    a me funge..

    compilation error = ?

    ok, nn avevo visto la spiegasiun

    io invece mi sto chiedendo come evitare che dopo la modifica / cancellazione la pagina faccia ancora visualizzare il detailsview, ma solo la gridview

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.