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

    [Vb.net 2008] - Ordinamento colonna datagridview

    Ciao ragazzi,
    ho un problema che non riesco a risolvere:
    ho un datagridview che carico tramite un datasource andando a recuperare i dati all'interno di un DB.
    Oltre ai dati caricati dal DB ho la necessità di aggiungere una colonna che deve contenere dei valori calcolati (tramite codice VB) sulla base dei dati estratti.

    Il mio problema è il seguente: la colonna viene creata e valorizzata correttamente, però non è ordinabile (invece tutte le altre si).

    Ho provato ad effettuare i calcoli sia durante l'evento CellFormatting del datagridView sia all'interno della DataTable, prima di associarla al DataSource.
    Ho anche provato ad impostare la proprietà ".SortMode = Automatic" ma non mi ha dato risultati.

    Riuscite a darmi qualche indicazione, per cortesia?

    Se vi servono altre info ditemi pure (ed eventualmente posso anche postare frammenti di codice".

    Per intanto vi ringrazio. Buona serata a tutti.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480

    Re: [Vb.net 2008] - Ordinamento colonna datagridview

    Originariamente inviato da M4tRiX83
    Se vi servono altre info ditemi pure (ed eventualmente posso anche postare frammenti di codice".
    Come ottieni i dati di cui parli dal db ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    ..tramite una query sql che va ad alimentare una datatable tramite un dataadapter. Poi la datatable popola un datasource che a sua volta popola in datagridview...se ti servono più dettagli posso postare anche il codice sorgente..

    ..x il momento grazie :-)

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quale query?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it L'avatar di Kahm
    Registrato dal
    Dec 2004
    residenza
    Rome
    Messaggi
    3,584
    io popolerei un dataset mediante il tuo datasource
    poi aggiungerei una colonna calcolata
    e farei infine il bind con il gridview

    in fquesto modo si pappa tutto e gestisce l'ordinamento

    prego prima rispondere alle domande che ti hanno fatto, in base a quelle possiamo valutaare meglio il tutto
    NN vi diro mai chi sono in realta,
    tutti i miei 3D sono orfani, non insistete per farmi rispondere ai 3D aperti da me

  6. #6
    Mah non avevo capito che vi interessava la query nello specifico.

    Ve la posto:

    codice:
    SELECT dTipologia as "Tipologia",numeroSerie, importo, dataEmissione as "Data_Emissione", dataScadenza as "Data_Scadenza", dIntestatari as "Intestatari" FROM tab_buoni WHERE tipologia IN(1,2,3)
    Vi aggiungo anche il metodo che ho usato per far calcolare i valori all'enterno dell'evento cellFormatting:

    codice:
    if _tmp_dg1.Columns(e.ColumnIndex).name = "Data_Ritiro" then
      if _tmp_dg1.Item(_tmp_dg1.Columns.Item("Tipologia").index,e.RowIndex).Value.ToString= "Ordinario" then
        _date = CType(_tmp_dg1.Item(_tmp_dg1.Columns.Item("Data_Scadenza").index, e.RowIndex).Value, Date)
        _date = _date.AddYears(10)
    
        e.Value = _date
      else
        e.Value = _tmp_dg1.Item(_tmp_dg1.Columns.Item("Data_Scadenza").index, e.RowIndex).Value
      end if
    end if
    Ora provo a seguire le indicazioni che mi hai dato. Eventualmente non hai un esempio da postarmi??

    Grazie e buona serata

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Potresti provare ad eliminare tutto il codice che hai scritto e usare solamente la query così modificata ...

    codice:
    SELECT dTipologia AS Tipologia, numeroSerie, importo, dataEmissione AS Data_Emissione, dataScadenza AS Data_Scadenza, dIntestatari AS Intestatari,
    IIF(dTipologia='Ordinario', DATEADD("yyyy", 10, dataScadenza), dataScadenza) AS dataRitiro
    FROM tab_buoni
    ORDER BY 7;
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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.