2014-04-30 15 views
7

Ho un reportviewer in un'applicazione Windows Form che mostra il report RDLC. Ho bisogno di copiare un testo di quel rapporto e salvarlo nel blocco note. Qualcuno può aiutare? enter image description hereCopia RDLC report testo e incolla nel blocco note

ad esempio, ho bisogno di copiare il testo "LiFTER ASSY" solo, ma senza esportare direttamente da reportviewer stesso.

+0

Che cosa si intende esattamente? Quale testo devi copiare? –

+0

Intendo dire che non posso evidenziare e copiare un testo mostrato nel rapporto RDLC (nel visualizzatore di report). Ho bisogno di evidenziare e copiare il testo selezionato in quel rapporto usando il mio mouse. –

+1

Ho paura che non ci sia modo di copiare il testo con i tuoi requisiti. O devi avere accesso ai dati (sei lo sviluppatore) o devi esportare il rapporto. –

risposta

1

È possibile esportare il report in formato pdf, Excel o word. Da lì puoi provare a copiare il testo.

+0

Questa non è una soluzione nel mio contesto. L'esportazione non è una soluzione, ma ho bisogno di copiare solo le parole specifiche del rapporto. per esempio. "Nazione" da intero saggio sulla nazione. E penso che esportare il rapporto potrebbe non essere una soluzione efficiente. Più veloce è la digitazione. Pertanto ho bisogno di copiare testi specifici. –

+0

Quando si esporta il report è lo stesso come lo si vede in rendering nell'applicazione. Se lo esporti in Excel, puoi copiare il contenuto della cella ad esempio –

+0

Ho già capito cosa intendi, ma per favore, questa non è una soluzione per me. Spero che la mia domanda sia chiara per te. –

2

Esportare o copiare manualmente digitando. È di sola lettura il rapporto generato.

0

Dal 2005 ho aspettato questa funzione!

L'unico workarround che ho trovato è quello di utilizzare l'evento Hyperlink di ReporViewer per emulare l'azione di copia (basata su http://www.devx.com/dotnet/Article/30424/0/page/6).

Nel rapporto, impostare una HIPERLINK come:

="copy:" & Fields!SomeField.Value 

E poi nel codice:

private void reportViewer_Hyperlink(object sender, HyperlinkEventArgs e) 
{ 
    Uri uri = new Uri(e.Hyperlink); 
    if (uri.Scheme.ToLower() == "copy") 
    { 
     System.Windows.Forms.Clipboard.SetText(uri.Authority); 
     e.Cancel = true; // Load the customer details in another form 
     ((ReportViewer)sender).RefreshReport(); 
    } 
} 
Problemi correlati