Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    19

    Esportare Datagrid Innestate Wpf

    Salve a tutti,

    sperando che questa discussione non sia già stata affrontata (ho cercato ma non ho trovato nulla) vi pongo un quesito che devo assolutamente risolvere e che mi sta facendo impazzire:

    nel progetto in cui sto lavorando ho dovuto creare una DataGrid (ricordo che sto parlando di WPF) per rappresentare una lista di oggetti (creata da me) e alcune delle sue proprietà.

    Alcune di queste sono a loro volta altre liste di oggetti che devo rappresentare allo stesso modo; in pratica si forma una struttura gerarchica di questo tipo (indico i vari oggetti col nome che gli ho dato):

    Episodio
    Domanda
    risposta
    variabile numerica

    Per rappresentare tale gerarchia ho, appunto, utilizzato lo stratagemma delle datagrid innestate (dove devo rappresentare un campo di episodio che corrisponde a una lista nella colonna corrispondente, che creo come DataGridTemplateColumn, inserisco nel DataTemplate un'altra datagrid).

    Ovviamente tutte le DataGrid sono create mediante Binding TwoWay dato che mi è anche stato richiesto che i dati possano essere modificati dalla tabella stessa alla sorgente.

    ecco come si presenta la tabella allo stato attuale:

    [IMG] Uploaded with ImageShack.us[/IMG]

    Il problema è che devo esportare tutto questo in un file .CSV in modo da poterlo aprire con programmi tipo Excel.

    Il mio precedente metodo si basava sul copiare tutto il contenuto delle celle della tabella (che era originariamente creata a mano e aveva solo DatagridTextColumn) nella ClipBoard e poi formattando il testo in maniera opportuna lo sabbtevo su file .csv creato da me.

    Tale metodo ora non può più funzionare perchè non ho celle il cui unico contenuto è una mera stringa, in molte il contenuto è un'altra DataGrid e non ho la più pallida idea di come fare per accedere ai dati contenuti all'interno e arrivare in pratica a un risultato molto simile a quello che ottenevo prima.

    Vi ringrazio anticipatamente dell'aiuto, per ulteriori spiegazioni del mio problema (scusatemi oggi per me è stata una giornata pesante e non riesco ad esprimermi bene ) chiedete pure, ogni aiuto è ben accetto.

  2. #2
    Ciao.
    Se usi il binding, vuol dire che hai anche un'origine dati dal quale attingere per popolare la griglia .... giusto?
    Non puoi usare tale origine dati per ricreare il file .csv?

    (scusatemi oggi per me è stata una giornata pesante e non riesco ad esprimermi bene )
    Stessa cosa per me, quindi se non ho capito il problema .... abbi pazienza rispiegamelo.

    Facci sapere...
    Ciao

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465

    Moderazione

    Originariamente inviato da EBLtorla
    ricordo che sto parlando di WPF
    Però non hai specificato il linguaggio, che va obbligatoriamente indicato, come da Regolamento (anche se le classi del .NET Framework sono ovviamente le stesse).

    Si tratta di VB.NET o C#?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    19
    Pardon, C#

  5. #5
    Se usi il binding, vuol dire che hai anche un'origine dati dal quale attingere per popolare la griglia .... giusto?
    Non puoi usare tale origine dati per ricreare il file .csv?

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    19
    in effetti creare il file a mano a partire dalla base dati era la mia ultima risorsa... ma temo che dovrò fare in questo modo dato che non sembra esserci altro.

  7. #7
    Ciao
    ma temo che dovrò fare in questo modo dato che non sembra esserci altro.
    .
    Non ti sembra esserci altro, perchè qualsiasi altra soluzione sarebbe secondaria a quella che ti ho dato io .... prendere i dati dalla sorgente è la cosa più giusta(a mio parere).
    La gridview è soltanto un output a video ..... il file .csv un output su disco.
    Ciao.

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.