{"id":35,"date":"2011-11-10T13:21:00","date_gmt":"2011-11-10T13:21:00","guid":{"rendered":"https:\/\/wdev-blog.azurewebsites.net\/index.php\/2011\/11\/10\/using-rendercontrol-method-to-generate-html\/"},"modified":"2011-11-10T13:21:00","modified_gmt":"2011-11-10T13:21:00","slug":"using-rendercontrol-method-to-generate-html","status":"publish","type":"post","link":"http:\/\/panahy.nl\/index.php\/2011\/11\/10\/using-rendercontrol-method-to-generate-html\/","title":{"rendered":"Using RenderControl method to generate Html"},"content":{"rendered":"<p><span style=\"font-family: Consolas; font-size: x-small;\"><span style=\"font-family: Consolas; font-size: x-small;\"> <\/span><\/span><br \/><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">This article demonstrates how to generate perfect HTML using the RenderControl method of server controls. The Html code is generated without makeing any server-side state or view state.<\/span><\/span><br \/><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\">\/\/\/<\/span><\/span><\/span><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"> <\/span><\/span><\/span><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\">&lt;summary&gt;<br \/><\/span><\/span><\/span><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\">\/\/\/<\/span><\/span><\/span><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"> This method demonstrates how to show Html output of a Server Control<br \/><\/span><\/span><\/span><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\">\/\/\/<\/span><\/span><\/span><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"> <\/span><\/span><\/span><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\"><span style=\"color: grey; font-family: Consolas;\">&lt;\/summary&gt;<br \/><\/span><\/span><\/span><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\">private<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"> <\/span><\/span><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\">void<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"> ShowHtml()<br \/>{<br \/><\/span><\/span><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\">&nbsp; \/\/ Create the in-memory objects that will catch the rendered output.<br \/><\/span><\/span><\/span><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\">&nbsp; StringWriter<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"> writer = <\/span><\/span><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\">new<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"> <\/span><\/span><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\">StringWriter<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">();<br \/><\/span><\/span><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\">&nbsp; HtmlTextWriter<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"> output = <\/span><\/span><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\">new<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"> <\/span><\/span><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\">HtmlTextWriter<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">(writer);<\/p>\n<p><\/span><\/span><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\">&nbsp; \/\/ Render the control to an in-memory string.<br \/><\/span><\/span><\/span><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\">&nbsp; var<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"> control = <\/span><\/span><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\"><span style=\"color: blue; font-family: Consolas;\">new<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"> <\/span><\/span><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\"><span style=\"color: #2b91af; font-family: Consolas;\">HyperLink<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">();<br \/>&nbsp; control.NavigateUrl = <\/span><\/span><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\">@&#8221;http:\\asghar.panahy.com&#8221;<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">;<br \/>&nbsp; control.Text = <\/span><\/span><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\">&#8220;Asghar Panahy&#8221;<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">;<br \/>&nbsp; control.Target = <\/span><\/span><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\">&#8220;_blank&#8221;<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">;<br \/>&nbsp; control.ToolTip = <\/span><\/span><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\">&#8220;Demostration&#8221;<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">;<\/p>\n<p>&nbsp; control.<strong>RenderControl<\/strong>(output);<\/p>\n<p><\/span><\/span><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\">&nbsp; \/\/ Display the HTML (and encode it properly so that<br \/><\/span><\/span><\/span><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\"><span style=\"color: green; font-family: Consolas;\">&nbsp; \/\/ it appears as text in the browser).<br \/><\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">&nbsp; lblHtml.Text = <\/span><\/span><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\">&#8220;The HTML for LinkWebControl1 is&lt;br \/&gt;&lt;blockquote&gt;&#8221;<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\"><br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;<strong>Server.HtmlEncode<\/strong>(writer.ToString()) + <\/span><\/span><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\"><span style=\"color: #a31515; font-family: Consolas;\">&#8220;&lt;\/blockquote&gt;&#8221;<\/span><\/span><\/span><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">;<br \/>}<\/span><\/span><br \/><span style=\"font-family: Consolas;\"><span style=\"font-family: Consolas;\">The output of this codewill be reading what you would ecpect in the Html code behind.<br \/>Notice that skipping the Server.HtmlEncode call will put the generated html as a link into the page. <\/span><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This article demonstrates how to generate perfect HTML using the RenderControl method of server controls. The Html code is generated without makeing any server-side state or view state.\/\/\/ &lt;summary&gt;\/\/\/ This method demonstrates how to show Html output of a Server Control\/\/\/ &lt;\/summary&gt;private void ShowHtml(){&nbsp; \/\/ Create the in-memory objects that will catch the rendered output.&nbsp; &hellip; <a href=\"http:\/\/panahy.nl\/index.php\/2011\/11\/10\/using-rendercontrol-method-to-generate-html\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Using RenderControl method to generate Html&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[28,30],"tags":[],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"post-thumbnail":false},"uagb_author_info":{"display_name":"Pouya Panahy","author_link":"http:\/\/panahy.nl\/index.php\/author\/pouya\/"},"uagb_comment_info":0,"uagb_excerpt":"This article demonstrates how to generate perfect HTML using the RenderControl method of server controls. The Html code is generated without makeing any server-side state or view state.\/\/\/ &lt;summary&gt;\/\/\/ This method demonstrates how to show Html output of a Server Control\/\/\/ &lt;\/summary&gt;private void ShowHtml(){&nbsp; \/\/ Create the in-memory objects that will catch the rendered output.&nbsp;&hellip;","_links":{"self":[{"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/posts\/35"}],"collection":[{"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/comments?post=35"}],"version-history":[{"count":0,"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/posts\/35\/revisions"}],"wp:attachment":[{"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/media?parent=35"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/categories?post=35"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/panahy.nl\/index.php\/wp-json\/wp\/v2\/tags?post=35"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}