50 messaggi dal 08 dicembre 2010
Salve a tutti,
ho un piccolo problemino con una parte di un sito che sto facendo, praticamente ho una sezione commenti in cui in una textbox multiline l'utente scrive il proprio commento, ovviamente l'utente farà i dovuti ritorni a capo, dopo il commento lo inserisco all'interno di un database sql express e alla fine tutti i commenti li faccio vedere con un datalist, il mio quesito è questo come faccio a far vedere nel datalist il commento con i ritorni a capo??

Grazie in anticipo dell'aiuto che mi darete.
161 messaggi dal 07 settembre 2009
Se non sbaglio la textbox riconosce \n come un a capo, quindi ti basta un Regex.Replace per sostituire tutti gli \n con <br />
Regex.Replace(testo.Text,"\n","<br />">



Davide
50 messaggi dal 08 dicembre 2010
doppiomango ha scritto:
Se non sbaglio la textbox riconosce \n come un a capo, quindi ti basta un Regex.Replace per sostituire tutti gli \n con <br />
Regex.Replace(testo.Text,"\n","<br />">



Davide

Grazie doppiomango per l'interessamento, ma dove lo devo mettere questo Regex.Replace(testo.Text,"\n","<br />"> ??
fefe274 ha scritto:
doppiomango ha scritto:
Se non sbaglio la textbox riconosce \n come un a capo, quindi ti basta un Regex.Replace per sostituire tutti gli \n con <br />
Regex.Replace(testo.Text,"\n","<br />">



Davide

Grazie doppiomango per l'interessamento, ma dove lo devo mettere questo Regex.Replace(testo.Text,"\n","<br />"> ??

Come valorizzi il datalist? Magari posta il tuo codice cosi capiamo meglio come hai impostato la pagina.

Creazione Siti Vicenza
Posizionamento Siti - SEO
50 messaggi dal 08 dicembre 2010
ricardo78 ha scritto:
fefe274 ha scritto:
doppiomango ha scritto:
Se non sbaglio la textbox riconosce \n come un a capo, quindi ti basta un Regex.Replace per sostituire tutti gli \n con <br />
Regex.Replace(testo.Text,"\n","<br />">



Davide

Grazie doppiomango per l'interessamento, ma dove lo devo mettere questo Regex.Replace(testo.Text,"\n","<br />"> ??

Come valorizzi il datalist? Magari posta il tuo codice cosi capiamo meglio come hai impostato la pagina.


Salve a tutti, vi posto tutto il codice della pagina dove ho il datalist:
<%@ Page Language="VB" MasterPageFile="~/Globale.master" Title="R.M.L. Unofficial Site - Commenti" %>


<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>


<ASP:Content ContentPlaceHolderId="Content1" ID="Contenuto1" RUNAT="server">
<br>
<center><font FONT SIZE="10" font face="Monotype Corsiva">Commenti</FONT></center>
<br>
<br>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:Connessione1 %>"
SelectCommand="SELECT [Nome], [Oggetto], [Commento], [Data] FROM [Commenti]">
</asp:SqlDataSource>
<table>
<tr>
<td>
<asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1"
BackColor="White" BorderColor="#DEDFDE" BorderWidth="10px"
CellPadding="4" ForeColor="Black" GridLines="Vertical" BorderStyle="Solid" width="700px">
<FooterStyle BackColor="#CCCC99" />
<AlternatingItemStyle Font-Bold="False" Font-Italic="False"
Font-Overline="False" Font-Strikeout="False" Font-Underline="False" />
<ItemStyle BackColor="#F7F7DE" />
<SelectedItemStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
<ItemTemplate>
<br>
<table border=1 bgcolor="#d8dad7" align="center" width="90%">
<tr>
<td width="10%">
<asp:Image ID="Image1" runat="server" ImageUrl="Immagini/Omino.gif" width="60" height="50"/>
</td>
<td align="left">
<b><asp:Label ID="NomeLabel" runat="server" Text='<%# Eval("Nome") %>' /></b>
<br>
<br>
<font color="#26438d"><asp:Label ID="DataLabel" runat="server" Text='<%# Eval("Data") %>' /></font>
</td>
</tr>
</table>
<table border=1 width="90%" align="center" bgcolor="#ecf6f2">
<tr>
<td>
<div align="justify"><font size="5" face="Monotype Corsiva"><b><asp:Label ID="OggettoLabel" runat="server" Text='<%# Eval("Oggetto") %>' /></b></font></div>
<br>
<div align="justify"><asp:Label ID="CommentoLabel" runat="server" Text='<%# Eval("Commento") %>' />
</td>
</tr>
</table>
<br />
<br />
</ItemTemplate>
</asp:DataList>
</td>
<td>
<div style="position:absolute; top:100px;"><img src="Immagini/Commento.gif" width="370" height="350">
</td>
</tr>
</table>
</ASP:Content>

La label interessata con il ritorno a capo è il CommentoLabel :)
Modificato da fefe274 il 12 aprile 2012 11.44 -
Ciao, a parte che io è da tanto che ho abbandonato l'uso del SqlDataSource (ora preferisco Entity Framework), nel tuo caso prova cosi:

<asp:Label ID="CommentoLabel" runat="server" Text='<%# Eval(Regex.Replace(("Commento"),"\n","<br />">) %>' />
 

Ma provalo perche ora come ora ho le idee un po confuse (sto programmando altro in questo momento  )

Fammi sapere!!

Creazione Siti Vicenza
Posizionamento Siti - SEO
50 messaggi dal 08 dicembre 2010
ricardo78 ha scritto:
Ciao, a parte che io è da tanto che ho abbandonato l'uso del SqlDataSource (ora preferisco Entity Framework), nel tuo caso prova cosi:

<asp:Label ID="CommentoLabel" runat="server" Text='<%# Eval(Regex.Replace(("Commento"),"\n","<br />">) %>' />
 

Ma provalo perche ora come ora ho le idee un po confuse (sto programmando altro in questo momento  )

Fammi sapere!!


Ho provato a farlo ma purtroppo non succede niente i ritorni acapo non li fa :(
Ciao,

guarda secondo me, tagliando la testa al toro, dovresti prevedere il popolamento del DataList da code behind. In questo modo, sempre secondo me, hai un codice innanzitutto piu performante, puoi usare il regex senza problemi ed infine avrai maggiore controllo su quello che succede nella pagina.

Poi come ti dicevo, è da tanto che non uso piu i datasource, perche li ritengo limitativi quando si vuole affinare la pagina, preferendo EF (ma anche l'uso di dataset o dei reader a seconda della necessita sono validi). Sicuramente questo approcio è piu complicato perche devi scrivere codice, ma alla fine ti ripaga!

Pensaci!

Creazione Siti Vicenza
Posizionamento Siti - SEO

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.