displaying html code in a textbox control

N

Ned White

Is it possible to insert HTML codes to a textbox control ?

I am reading HTML formated string from sql server but if i assign this value
to Text property of TextBox, the format tags of HTML seems too...

sample string value from database:
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN style="FONT-SIZE: 11pt;
mso-bidi-font-weight: bold">
Sales Contract </SPAN></P>
<SPAN style="FONT-SIZE: 11pt; mso-bidi-font-weight: bold">Paragraph 7.
Buyer has the right to examine the goods upon receipt and has ____ days in
which to notify seller of any claim for damages based on the condition,
grade, quality or quality of the goods. Such notice must specify in detail
the particulars of the claim. Failure to provide such notice within the
requisite time period constitutes irrevocable acceptance of the goods.
<o:p></o:p></SPAN></P>
<P>&nbsp;</P>

The string is asked for in a textbox because of the scrollbars of textbox,

Are there any solutions to display html codes in textbox control or any
suitable control for this ...?

Thanks....
 
G

George Ter-Saakov

Do Server.HtmlEncode before assigning this to the Text property....

George.
 
N

Ned White

Hi George ,

I am trying this.

TextBox1.Text = Server.HtmlEncode(DT.Rows[0][1].ToString());

But it seems in textbox like that:
&lt;P class=MsoNormal style=&quot;MARGIN: 0cm 0cm
0pt&quot;&gt;&lt;B&gt;&lt;SPAN \r\nstyle=&quot;FONT-SIZE:
11pt&quot;&gt;Sales Contract &lt;?xml:namespace prefix = o ns =
\r\n&quot;urn:schemas-microsoft-com:eek:ffice:eek:ffice&quot;
/&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;\r\n&lt;P
class=MsoNormal style=&quot;MARGIN: 0cm 0cm 0pt&quot;&gt;&lt;B&gt;&lt;SPAN
\r\nstyle=&quot;FONT-SIZE:
11pt&quot;&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;\r\n

but the value is :
<P class=MsoNormal style=\"MARGIN: 0cm 0cm 0pt\"><B><SPAN
\r\nstyle=\"FONT-SIZE: 11pt\">Sales Contract <?xml:namespace prefix = o ns =
\r\n\"urn:schemas-microsoft-com:eek:ffice:eek:ffice\"
/><o:p></o:p></SPAN></B></P>\r\n<P class=MsoNormal style=\"MARGIN: 0cm 0cm
0pt\"><B><SPAN \r\nstyle=\"FONT-SIZE:
11pt\"><o:p>&nbsp;</o:p></SPAN></B></P>\r\n
 
N

Ned White

by the way, I forgot that it is a c# web project and i am trying this on a
web form not a windows form.

Sory for the mistake..
 
I

Ignacio Machin ( .NET/ C# MVP )

by the way, I forgot that it is a c# web project and i am trying this on a
web form not a windows form.

Sory for the mistake..

Hi,


Good clarification :)

Just a Label, instead. Or a Literal control
 
G

George Ter-Saakov

If you using WebControls then they will do Server.HtmlEncode automaticly.
So TextBox1.Text = DT.Rows[0][1].ToString();
That is why you end up encoding twice.. so <img> becomes &lt;img&gt; and
then becomes &asmp;lt;img&amp;gt;

If you using HtmlControsl they do not do that so you will need
TextBox1.Value = Server.HtmlEncode( DT.Rows[0][1].ToString() );

PS: I wish WebControls did not do encode too...

George.
 
N

Ned White

Thanks George,

I use Panel control and <div> tag combination instead of textbox.

the aspx code:
<asp:panel ID="Panel1" runat="server" Width="100%" Height="100px"
BorderStyle="Solid" BorderWidth="1px"
ScrollBars="Auto" Style="padding:10px">
<div id="ForTheDocs" runat="server">
</div>
</asp:panel>

and the code-behind part:

ForTheDocs.InnerHtml = Server.HtmlDecode(DT.Rows[0][1].ToString());


Thanks a lot.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top