Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541

    Creare un elenco particolare

    Ciao a tutti,
    devo creare un elenco simile a questo: Link

    Prendendo tutto da DB.
    Ora vorrei mettere tutto in un datagrid o altro componente ma come faccio a dirgli che la serie (es: BJ) me la deve prendere una volta e poi mi deve dare i modelli di quella serie fino a passare poi alla prossima serie?

    Forse non sono stato molto chiaro ma se vedete il link subito capite.

    Le mie Tabelle sono: Serie(Chiave esterna: id_marca) - Modello(Chiave esterna: id_serie)

    Grazie a tutti

  2. #2
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541

    Re: Creare un elenco particolare

    Originariamente inviato da mexican
    Ciao a tutti,
    devo creare un elenco simile a questo: Link

    Prendendo tutto da DB.
    Ora vorrei mettere tutto in un datagrid o altro componente ma come faccio a dirgli che la serie (es: BJ) me la deve prendere una volta e poi mi deve dare i modelli di quella serie fino a passare poi alla prossima serie?

    Forse non sono stato molto chiaro ma se vedete il link subito capite.

    Le mie Tabelle sono: Serie(Chiave esterna: id_marca) - Modello(Chiave esterna: id_serie)

    Grazie a tutti
    Nessuno mi sa dire nulla?

  3. #3
    Utente di HTML.it L'avatar di Franz78
    Registrato dal
    Sep 2004
    Messaggi
    730
    fai un semplice controllo sulla serie....
    finchè è uguale alla precedente non la scrivi, nel momento che cambia scrivi la nuova serie
    ovviamente ordina per serie


    ciao

  4. #4
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541
    Originariamente inviato da Franz78
    fai un semplice controllo sulla serie....
    finchè è uguale alla precedente non la scrivi, nel momento che cambia scrivi la nuova serie
    ovviamente ordina per serie


    ciao
    si avevo pensato a questo, ma non so come farlo con un datagrid.
    Mi sapresti dare qualche suggerimento? Un'esempio?
    grazie

  5. #5
    Utente di HTML.it L'avatar di Franz78
    Registrato dal
    Sep 2004
    Messaggi
    730
    metti una variabile di appoggio nell'itemdatabound,
    quando cambia valorizzi o meno la label della serie, o la rendi visibile/ invisibile.

    Ciao!

  6. #6
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541
    Originariamente inviato da Franz78
    metti una variabile di appoggio nell'itemdatabound,
    quando cambia valorizzi o meno la label della serie, o la rendi visibile/ invisibile.

    Ciao!
    Scusa ma non ho ben capito... non sono praticissimo.

    Ecco io cosa ho
    Lato Vb
    codice:
    Dim j As Integer = 0
            Dim i As Integer = 0
            Dim ds As DataSet = New DataSet("dsLista")
            Dim dtLista As DataTable = New DataTable("dtLista")
            Dim riga As DataRow
            dtLista.Columns.Add("id_serie")
            dtLista.Columns.Add("id_mod_stampante")
            dtLista.Columns.Add("serie")
            dtLista.Columns.Add("mod_stampante")
            ds.Tables.Add(dtLista)
            ds.Tables("dtLista").Rows.Clear()
    
    
    
    
            'Dim serie As String
            strsql = "Select Serie.serie, Serie.id_serie, Mod_Stampante.id_mod_stampante, Mod_Stampante.mod_stampante From Marche Left Join Serie Using(id_marca) Left Join Mod_Stampante Using (id_serie) where Serie.id_tipo=1 and Marche.id_marca=1 Group by id_serie order by Marche.id_marca, Serie.id_serie"
            cmdSql = New MySqlCommand(strsql, conn)
            rs = cmdSql.ExecuteReader
            While rs.Read
                riga = dtLista.NewRow
                riga("id_serie") = rs("id_serie").ToString
                riga("id_mod_stampante") = rs("id_mod_stampante").ToString
                riga("serie") = rs("serie").ToString
                riga("mod_stampante") = rs("mod_stampante").ToString
                dtLista.Rows.Add(riga)
            End While
            rs.Close()
            lista.DataSource = ds
            lista.DataBind()
    Lato aspx

    codice:
    asp:GridView ID="lista" runat="server" AutoGenerateColumns="False" ShowFooter="true"  DataKeyNames="id_serie,id_mod_stampante" GridLines="Vertical" BorderStyle="None" CellPadding="2" CellSpacing="2">
                            <Columns>
                            
                                <asp:TemplateField>
                                    <ItemStyle Width="170px" />
                                    <ItemTemplate><asp:Label ID="serie" runat="server" Text=' <%#DataBinder.Eval(Container.DataItem,"serie") %>'></asp:Label></ItemTemplate>
                                </asp:TemplateField>
                                
                                <asp:TemplateField>
                                    <ItemStyle Width="170px" />
                                    <ItemTemplate><asp:label ID="mod_stampante" runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"mod_stampante") %>'></asp:label></ItemTemplate>
                                </asp:TemplateField>
                                
                            </Columns>                        
                        </asp:GridView>
    Grazie ancora

  7. #7
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Ho fatto una cosa del genere con la seguente logica:

    - Ho fatto una Stored Procedure che mi restituisce (in un DATATABLE, che chiameremo Datatable_Totale) tutto cio' che deve stare sulla pagina.

    - Ho creato N Datagrid (era il FW 1.1) secondo quanti me ne sarebbero serviti.

    - Ho creato nel codice una Sub Filtra, con un codice del genere:
    codice:
            Datatable_Totale.DefaultView.RowFilter = "TIPOSTAMPANTE='BJ'"
            If Datatable_Totale.DefaultView.Count > 0 Then
                dgStampantiBJ.DataSource = Datatable_Totale
                dgStampantiBJ.DataBind()
            Else
                dgStampantiBJ.DataSource = Nothing
                dgStampantiBJ.DataBind()
            End If
    
            Datatable_Totale.DefaultView.RowFilter = "TIPOSTAMPANTE='BJC'"
            If Datatable_Totale.DefaultView.Count > 0 Then
                dgStampantiBJC.DataSource = Datatable_Totale
                dgStampantiBJC.DataBind()
            Else
                dgStampantiBJC.DataSource = Nothing
                dgStampantiBJC.DataBind()
            End If
    In pratica, ho sfruttato il metodo RowFilter del DATAVIEW

  8. #8
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541
    Originariamente inviato da djciko
    Ho fatto una cosa del genere con la seguente logica:

    - Ho fatto una Stored Procedure che mi restituisce (in un DATATABLE, che chiameremo Datatable_Totale) tutto cio' che deve stare sulla pagina.

    - Ho creato N Datagrid (era il FW 1.1) secondo quanti me ne sarebbero serviti.

    - Ho creato nel codice una Sub Filtra, con un codice del genere:
    codice:
            Datatable_Totale.DefaultView.RowFilter = "TIPOSTAMPANTE='BJ'"
            If Datatable_Totale.DefaultView.Count > 0 Then
                dgStampantiBJ.DataSource = Datatable_Totale
                dgStampantiBJ.DataBind()
            Else
                dgStampantiBJ.DataSource = Nothing
                dgStampantiBJ.DataBind()
            End If
    
            Datatable_Totale.DefaultView.RowFilter = "TIPOSTAMPANTE='BJC'"
            If Datatable_Totale.DefaultView.Count > 0 Then
                dgStampantiBJC.DataSource = Datatable_Totale
                dgStampantiBJC.DataBind()
            Else
                dgStampantiBJC.DataSource = Nothing
                dgStampantiBJC.DataBind()
            End If
    In pratica, ho sfruttato il metodo RowFilter del DATAVIEW
    Ma in questo caso io dovrei conoscere a priori i tipostampante giusto?

  9. #9
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Non e' detto, puoi tirarli fuori anche da un'altra query, metterli in un Datareader e ciclare.

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.