Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Popolare un modello RTF a runtime
venerdì 31 ottobre 2008 - 12.12
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
gabriel81
Profilo
| Junior Member
194
messaggi | Data Invio:
ven 31 ott 2008 - 12:12
Ciao a tutti.
Grazie alle risorse che ho trovato sul web, sono riuscito a fare un form che stampa dei file RTF.
Praticamente grazie ad un controllo Richtextbox leggo il file e poi con un printdocument lo stampo.
Ora però, il secondo passaggio sul quale mi sono arenato è come riuscire a sostituire i tag presenti nel modello con i dati che estraggo da SQL Server o che calcolo comunque a runtime.
In parole povere vorrei che ad esempio se nel modello scrivo <DATAGIORNO> nella Richtextbox compaia Venerdì 31 ottobre 2008.
Si può fare??????????????
llamanna
Profilo
| Junior Member
70
messaggi | Data Invio:
ven 31 ott 2008 - 15:38
Il controllo RichTextBox espone il testo da lui contenuto tramite la proprietà Rtf, che è di tipo string.
Potresti semplicemente utilizzare il metodo Replace esposto dagli oggetti stringa, per sostuire i placeholder con il valori previsti:
Ad esempio se il testo contenuto dal controllo è:
"Io mi chiamo <NOME>"
per ottenere
"Io mi chiamo Titty"
basta fare:
richTextBox.Rtf = richTextBox.Rtf.Replace("<NOME>", "Titty");
Buon lavoro.
Laura.
http://lauralamanna.blogspot.com/
gabriel81
Profilo
| Junior Member
194
messaggi | Data Invio:
ven 31 ott 2008 - 16:09
Sei fantastica! Come ho fatto a non arrivarci....
Grazie
http://www.myspace.com/madmack1981
gabriel81
Profilo
| Junior Member
194
messaggi | Data Invio:
ven 31 ott 2008 - 17:19
Ora però c'è un altro problema..
Finchè sono informazioni fisse, il replace è ottimo, ma come faccio a costruire o almeno popolare una tabella ?
ad esempio un elenco di contatti:
dal db estraggo le righe, poi ciclo su di esse e le dovrei disporre in una tabella nel modello rft mettendo nella prima colonna il nome, nella seconda il cognome e nella terza il cellulare.
E' possibile?
http://www.myspace.com/madmack1981
llamanna
Profilo
| Junior Member
70
messaggi | Data Invio:
ven 31 ott 2008 - 18:49
817_Documents.zip
Non credo che il Richtextbox preveda un modo per inserire dinamicamente le righe all'interno di una tabella.
L'unico suggerimento che posso darti è che se inserisci il tuo elenco alla fine del testo, puoi accodare le righe della tua tabella, come viene mostrato nel codice seguente
richTextBox1.LoadFile("TestoConTabella.rtf");
RichTextBox tempRichText = new RichTextBox();
tempRichText.LoadFile("SoloRiga.rtf");
tempRichText.Rtf = tempRichText.Rtf.Replace("<Nome>", "Cip");
tempRichText.Rtf = tempRichText.Rtf.Replace("<Cognome>", "Ciop");
tempRichText.Rtf = tempRichText.Rtf.Replace("<Telefono>", "123456798");
this.richTextBox1.AppendText(tempRichText.Text);
tempRichText.LoadFile"(SoloRiga.rtf");
tempRichText.Rtf = tempRichText.Rtf.Replace("<Nome>", "Pippo");
tempRichText.Rtf = tempRichText.Rtf.Replace("<Cognome>", "Peppino");
tempRichText.Rtf = tempRichText.Rtf.Replace("<Telefono>", "2222222");
this.richTextBox1.AppendText(tempRichText.Text);
Se stai lavorando con il framework 3.0 o 3.5 potresti dare un'occhiata a questa documentazione
http://msdn.microsoft.com/it-it/library/system.windows.controls.richtextbox.aspx
http://lauralamanna.blogspot.com/
gabriel81
Profilo
| Junior Member
194
messaggi | Data Invio:
ven 31 ott 2008 - 19:03
A dire la verità sto cercando di implementare la stampa delle fatture dalla mia applicazione.
ho aperto un thread dove chiedo consigli su come procedere.
Cioè in pratica, se c'è un modo migliore rispetto all'rtf, ben venga, l'importante è stampare queste maledette fatture!
http://dotnethell.it/forum/messages.aspx?ThreadID=26311
graZIE
http://www.myspace.com/madmack1981
llamanna
Profilo
| Junior Member
70
messaggi | Data Invio:
sab 1 nov 2008 - 12:09
Il framework 3.0 offre la libreria Sytem.Printing. Non ho ancora avuto modo di utilizzarla, potresti però dare un'occhiata a questa documentazione
http://msdn.microsoft.com/it-it/library/85s6fdty.aspx.
Questo link potrebbe esserti sicuramente di aiuto
http://msdn.microsoft.com/en-us/library/ms996472.aspx#printwinforms_topic4
Infine esistono delle componenti di terze parti che ti permettono in maniere semplice, di stampare secondo una precisa formattazione, dei dati. Io conosco Aspose, che purtroppo però è a pagamento. Potresti però verificare se esistono delle librerie a tal proposito open source.
Se navigando navigando...
dovessi incontrare qualcosa che possa tornati utile, ti faccio sapere.
Laura.
http://lauralamanna.blogspot.com/
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !