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> </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....
George Ter-Saakov - 16 Apr 2008 13:00 GMT
Do Server.HtmlEncode before assigning this to the Text property....
George.
> Is it possible to insert HTML codes to a textbox control ?
>
[quoted text clipped - 20 lines]
>
> Thanks....
Ned White - 16 Apr 2008 14:32 GMT
Hi George ,
I am trying this.
TextBox1.Text = Server.HtmlEncode(DT.Rows[0][1].ToString());
But it seems in textbox like that:
<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:office:office"
/><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
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:office:office\"
/><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> </o:p></SPAN></B></P>\r\n
George Ter-Saakov - 16 Apr 2008 16:37 GMT
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 <img> and
then becomes &asmp;lt;img&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.
> Hi George ,
>
[quoted text clipped - 19 lines]
> 0pt\"><B><SPAN \r\nstyle=\"FONT-SIZE:
> 11pt\"><o:p> </o:p></SPAN></B></P>\r\n
Ned White - 16 Apr 2008 18:26 GMT
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.
rossum - 16 Apr 2008 14:08 GMT
>Are there any solutions to display html codes in textbox control or any
>suitable control for this ...?
As well as George's suggestion, you could use a WebBrowser control and
use its DocumentText property to load your text into it.
rossum
Ned White - 16 Apr 2008 14:39 GMT
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..
Ignacio Machin ( .NET/ C# MVP ) - 16 Apr 2008 15:43 GMT
> 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