Quale controllo e quale tipo di dati ...

mercoledì 13 gennaio 2010 - 15.17

alexmed Profilo | Guru

Ciao a tutti
Vorrei realizzare una pagina in cui un utente inserisce un commento per poi visualizzarlo, ne più ne meno come quando si apre un nuovo Thread.
Il tutto appoggiandomi ad un db Access.
Per ora ho provato con un TexBox multilinea per inserire i dati ed un campo memo per salvarli.
Il problema è che ad esempio i link ai siti non li "formatta" ed i ritorni a capo non li considera.
Quali modifiche dovrei apporre?

Grazie.

alexmed

tonyexpo Profilo | Senior Member

Ciao

per avere una migliore gestione di cio che scrivi dovresti usare dei controlli ASP.NET per l'HTML che si occuperanno di formattare ciò che scrivi in html così da poterlo visualizzare as-is

http://rteditor.members.winisp.net/ (download: http://www.codeplex.com/rte/SourceControl/ListDownloadableCommits.aspx)

http://freetextbox.com/demos/

http://ckeditor.com/demo


sfortunatamente la maggior parte sono a pagamento........
ciao

Antonio Esposito
MCTS, MCP

http://blogs.dotnethell.it/espositos

alexmed Profilo | Guru

Ciao tonyexpo e grazie
In realtà cercavo qualcosa di molto più semplice. Ed aldilà del controllo volevo sapere se poi, salvando il testo nel db Access nel campo memo, perdo comunque la formattazione del testo (quindi i ritorni a capo ed i link).

alexmed

tonyexpo Profilo | Senior Member

Ciao

il testo lo devi salvare nella sua versione HTML
in pratica quando a video scrivi:
Ciao io sto
andando a capo...

scriverai nel DB (in html)
<p>Ciao io sto<br/>
andando a capo...</p>

per farlo il controllo ti aiuta molto.....

in alternativa puoi scriverti direttamente l'html nella textbox multiline... ma a volte per salvarlo correttamente nel db ti conviene convertire il testo con System.Web.HttpUtility.HtmlEncode()/HtmlDecode()... in ogni caso sarebbe preferibile utilizzare dei parametri (nn ricordo se access li supporta)

spero di essere stato chiaro, altrimenti scrivi pure
ciao

Antonio Esposito
MCTS, MCP

http://blogs.dotnethell.it/espositos

alexmed Profilo | Guru


Ciao
Riprendo il post, dopo che ho risolto altri problemi, perchè non sono ancora riuscito a risolvere/capire come bisogna procedere.
Ho dato uno sguardo ai vari controlli che mi hai indicato ma non riesco a gestirli e inoltre sono fin troppo per le mie esigenze.

Ripeto il problema:

Se in una textarea scrivo "www.dotnethell.it" vorrei che se salvato nel db e poi visualizzato ad esempio su una label sia effettivamente un link
www.dotnethell.it

Grazie


alexmed

tonyexpo Profilo | Senior Member

Ciao

come ti dicevo, a parte uno di quei controlli che ha una simile logica integrata, per il resto non esiste niente di già pronto

puoi solo convertire www.xxx.com in <a href="www.xxx.com">www.xxx.com</a> con qualche sorta di replace o meglio ancora con una regular expression
Antonio Esposito
MCTS, MCP

http://blogs.dotnethell.it/espositos

alexmed Profilo | Guru

Non sempre si può trovare qls di già fatto e quindi mi studierò un sistema.
Non avendo il tempo adesso devo arrangiarmi in qualche modo ed allora ho trovato questo codice

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

che però mi blocca per due motivi:
il primo è dovuto al fatto che utilizzando aspx con una pagina master non sò come caricare il ".designMode = "On"" per il frame
il secondo è riuscire da codice (VB) a recuperare il testo "pulito" per poi inserirlo nel db.

Se riuscissi a risolvere questo sarei a cavallo

Grazie

alexmed

tonyexpo Profilo | Senior Member

Al posto tuo non sporcherei il testo in serito nel box, ma salverei sempre l'originale nel DB (senza converto, riconverto)

all'atto della visualizzazione poi puoi fare la modifica del testo aggiungendo i link

Ciao

Antonio Esposito
MCTS, MCP

http://blogs.dotnethell.it/espositos
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 !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5