Ricerca 
it-ITen-US
Register
Login
In-Vesti Dotnetwork
IN-VESTI DNW!!!
Sono finalmente arrivate le nuovissime T-Shirt di DotNetWork!!! Con soli 15,00 € ci sosterrai nelle spese di gestione della Community e ti invieremo a casa una splendida maglietta.
Se vuoi contribuire al mantenimento di DotNetWork.it Vai sulla pagina Iscrizioni
Effettua il pagamento usando IWBank
Click per andare alla pagina di Iscrizione
Oppure un Bonifico bancario (le coordinate sono sulla pagina Iscrizioni), inviaci una mail a support@dotnetwork.it indicandoci la tua taglia e l'indirizzo di spedizione.  Non appena verificata la ricezione del pagamento provvederemo a spedirti la tua T-Shirt.  Le magliette sono disponibili nelle taglie S-M-L-XL-XXL (in caso di esaurimento di una delle taglie, indica quella di "Backup"). Grazie per IN-VESTIRTI con NOI!!!
.:DotNetWork Founders:.
    Print     


DotNetWork Forums
Aprire ReportView (Sharp Shooter) da DLL
Last Post 24 Jul 2009 08:27 by Alberto [MVP] (DNW TEAM). 1 Replies.
Printer Friendly
Sort:
PrevPrev NextNext
You are not authorized to post a reply.
Author Messages

Posts:537

--
22 Jul 2009 23:55  

Buona Notte...

in una mia DLL ho vari Form...
in un form legato (bindong) ad una fonte dati (DataTable) ho alcuni TxtBox.

ho messo un ReportManager della Report Sharp Shooter e ho creato un Report InlineReportSlot.
Ho creato una Data Source legata ad un TxtBox.
nell'evento Click di un Button ho fatto partire un ReportView legato al mio report:

AddHandler ReportSlot.RenderCompleted, AddressOf ReportSlot_RenderCompleted
ReportSlot.RenderDocument()
ReportSlot.Prepare()

Private Sub ReportSlot_RenderCompleted(ByVal sender As Object, ByVal e As EventArgs)
Dim previewForm As PerpetuumSoft.Reporting.View.PreviewForm previewForm = New PerpetuumSoft.Reporting.View.PreviewForm(reportSlot) previewForm.WindowState = FormWindowState.Maximized previewForm.Show()
If Not (previewForm Is Nothing) Then 
   previewForm.Dispose()
End If
End Sub

in questo modo il ReportView non parte e non visualizza nulla...

tutto sta nello Show del previewForm.
se lo imposto "previewForm.ShowDialog(Me)" funziona ma alla chiusura mi da un eccezzione "Operazione cross-thread non valida: è stato eseguito l'accesso al controllo 'frmArchivioContatti' da un thread diverso da quello da cui è stata eseguita la creazione."


ho pensato di farlo creando un nuovo form e farlo partire con il semplice show del form...ma non riesco a capire come passargli il paramentro che deve scrivere nella DataSource creata nel ReportManager.

qualcuno ha avuto il mio stesso problema?
Grazie.


Posts:662

--
24 Jul 2009 08:27  
qualcuno ha avuto il mio stesso problema?
Quando fai domande del genere sarebbe meglio spiegare anche qual'è l'obiettivo che vuoi raggiungere, perchè in questo modo difficilmente si riesce a capire come mai ti viene fuori un'eccezione di cross-threading. O meglio, non riesco a capire come mai chiami la finestra in apertura modale e come mai le operazioni sulla finestra le fai nell'evento Show della stessa (cosa assolutamente deprecabile). L'evento show in programmazione .NET sarebbe quasi da evitare, per svariati motivi:
1) La finestra non è ancora entrata in piene possesso di tutte le sue "facoltà mentali"
2) Esistono metodi alternativi (vedi metodo Shown.... con la "n" finale)
3) E' inutile eseguire un sacco di volte lo stesso codice di inizializzazione tutte le volte che la finestra viene visualizzata
4) Alcune impostazioni, sopratutto di parametri passati da altre porzioni di codice è decisamente meglio gestirle dal codice che le richiama piuttosto che dal form che le visualizza
5) La maschera rimane visivamente "in sospeso" per tutta la durata dell'esecuzione del tuo codice dando l'impressione all'utente che il tuo programma sia inchiodato.
6) Se alcuni produttori di terze parti lavorano con oggetti a thread singolo hai problemi di cross-threading (come nel tuo caso)
In definitiva, cerca di spiegare cosa devi fare e cercheremo di darti una soluzione diversa.
Attendo nuove...
Alberto.
You are not authorized to post a reply.

Active Forums 4.1
       
Articoli
Introduzione a Windows Presentation Foundation (parte 1)
La prima di una serie di traduzioni da articoli di MSDN o altre fonti che offrono un punto di partenza per iniziare a capire il WPF.
2007/07/29 | Author: Patrizia Cosolo
Miniguida alla OOP con il .NET Framework- Parte I
Come prendere per mano un tipico programmatore VB6
2008/07/27 | Author: Alberto De Luca
Our Dll's in the Add Reference .NET Tab
How to be able to show our DLLs in the Add reference Windows Under the .NET Tab.
2008/07/27 | Author: Sabrina Cosolo
Programmer Paster Addin per Expression Web1 e 2
Implementare un Addin per Expression Web 1 e 2 che usa la libreria ProgrammerPaster
2009/02/26 | Author: Rudy Azzan
Starting from Scratch with WPF (Part 3)
Rows, deities, brushes and refrigerators (second part)
2007/11/22 | Author: Sabrina Cosolo
ASP.NET Authentication
How it works the ASP.NET authentication? let's discover it with a few samples.
2007/08/09 | Author: Rudy Azzan
Programmer Paster Addin per Expression Web1 e 2
Implementare un Addin per Expression Web 1 e 2 che usa la libreria ProgrammerPaster
2009/02/26 | Author: Rudy Azzan
Starting from scratch with Visual Studio
Introducing .NET and Visual Studio
2007/07/29 | Author: Sabrina Cosolo
    Print     
Home|Forums|Blogs|Mappa del sito
© 2007-2010 by DotNetWork  .:.  Terms Of Use  .:.  Privacy Statement  .:.  Login  .:.