Render Control To Html Produces A Different String?
Jul 7, 2010
I am trying to render a hyperlink to html. ( etc)
When the page loads it works fine. (and lots 10 links) on the update panel it hits the same function and tries to get another 10 links. I set the navigationURL to something like
"../Folder/Mypage.aspx?498592ghjgfosdfgo"
It is set identically both times(load and updatepanel postback) but when i try to render it to html the second time (on the update panel) it adds "../" to the front so i end up with
"../../Folder/Mypage.aspx?498592ghjgfosdfgo"
The function where it changes here
Public Shared Function RenderControl(ByVal c As Control) As String
Dim sw As New IO.StringWriter
Dim htmlw As New HtmlTextWriter(sw)
c.RenderControl(htmlw)
Return sw.ToString
End Function
c is the hyperlink which has the propertry navigationurl (this never gets changed) but the sw which ends up looking like this on load
Iam getting the below string in a variable"result" after xslt tranformation. if i do Page.ParseControl(result) iam able to render controls to the page. But the requirement is different. I have 4 place holders in that aspx page.I need to bind div id="Section1" to placeholder1, div id="Section2" to placeholder2 and similar the other two sections also to the corresponding place holder. how can i loop and add controls to corresponding place holder.
I am using web user control and making it visible false initially (page load) and on the selection of checkbox i am making it visible true. user control html is missing when i load it on checkbox selection. is there any when that i rebind the complete form again on checkbox selection so that user control html should be rendered.
i am really struggling to solve this issue since last two days.
I've put (spaces between & and gt above code otherwise it was not showing in stackoverflow.) The HTML sysntaxs are correct because it's created by an HTMLEDITOR.
You have used the attribute named above in your document, but the document type you are using does not support that attribute for this element. This error is often caused by incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Transitional" document type to get the "target" attribute), or by using vendor proprietary extensions such as "marginheight" (this is usually fixed by using CSS to achieve the desired effect instead).
This error may also result if the element itself is not supported in the document type you are using, as an undefined element will have no supported attributes; in this case, see the element-undefined error message for further information.
I have a ajax combobox in my page, when i try to select an item from it i can select by typing in text and its selectedindexchanged event fires, but when that event is complete and when i try to select another item from the combobox it produces the following error:
could not complete operation due to error 800a025e,and an alert asks me if i want to debug it.If I press yes then i get this page:
I've been watching a video on Scott Hanselmnn teaching MVC 2 tricks/tips. He mentions how MVC 2 by default uses ASP.NET Web Forms view engine to render the output of the views; he mentions that the web forms view engine is a little slower than it could be for MVC 2 since it generates a control tree and then outputs the HTML to the page (I hope I said that right).
I was wondering what he meant by web forms generating a code tree before outputting the HTML to the page. Does anyone have insight on the view engine of Web forms and the steps of the rendering process works for ASP.NET and MVC2?
is there any way to create a server control from html string, i mean in code behind i have a string like string html = "<asp:CheckBox ID="CheckBox1" runat="server" />";So how to insert it into aspx page and when the page is rendering, it convert my string
The thing is that the HtmlContent string is getting "auto decoded" so the paragraph-elemnts gets renderd as <p>(sry might mix up decoding and encodeing..Im always getting confused by those)
anyway..I want the string to render as proper Html...how can this be achieved?
I just upgraded my mvc 1.0 project to 2.0 using the wizard. My project builds fine however, my html helpers that I have used, does not render the input's ID tag. For some reason, only some controls render and some do not. For example:
[code]....
I thought it had to do with the fact that the value is empty, but from the two examples, they are nearly identical. Is this a bug? All was working before I upgraded.
I would like to get the html code a view would generate in a string, modify it in my controller, then add it to my JsonResult.
I found code that would do what i'm talking about from a partial. I would like to do it from an aspx View though.
Extra explanation:
Let's say I have a page Frame.aspx that /Controller/Frame will return I would like to get my hand on the response before it out so I can to wrap it with jsonp. I do not wish to edit the return result in code every time, this is why I want to load the view programmatically.
/Controller/Frame currently returns Frame.aspx's content: <html><body>hello</body></html>
Let's say there's a function that renders a view in a string builder
StringBuilder sb = new StringBuilder(); RenderView(sb, "Frame");
Let's say I have a string that I retrieve from a DB like: "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et {{Hyperlink|navigateurl='/foo.aspx'}} dolore magna aliquyam."
This string may now get assigned to the Text-property of a label. What I want is to parse {{Hyperlink|navigateurl='/foo.aspx'}} and replace it with
and assign the whole text including the HyperLink-Control to the Label.
Is that even possible? I think I could use reflection to create the control and set the properties. (the HyperLink-Control was just an example) But can I manage to insert the asp.net control back into the string to ensure the hyperlinks rendering as server contorl?
I hope you understand what I want. If not, feel free to post comments.
Edit1:
what do you mean by "assign the whole text including the HyperLink-Control to the Label."? can you xplain a bit, the reason for doing so ?
I think it won't work to assign the control into the string, because a asp.net control cannot be fit into a string.
After some thinking I found a way to achieve my goal. That would be to create a placeholder (I name it A). Therein some Literal control will be added. In addition I would create a placeholder (I name it B), add my Hyperlink into B, and add A into B. But I think is way to overkill.
The reason why I started thinking about this, was to gain access to Server.MapPath without replacing occurences in the string. I want to be able to use relative paths in my CMS, that get rendered like the NavigateUrl property from a hyperlink. Nevertheless I think my question with the dynamically creation is worth thinking about
Iam getting the below string in a variable"result" after xslt tranformation. if i do Page.ParseControl(result) iam able to render controls to the page. But the requirement is different. I have 4 place holders in that aspx page.I need to bind div id="Section1" to placeholder1, div id="Section2" to placeholder2 and similar the other two sections also to the corresponding place holder. how can i loop and add controls to corresponding place holder.
i'm using some components. When page render, components generate html comment tags. if i'm using this component 10 times on one page, html comments inserted 10 times.
How to remove html comment tag before render page?
For some reason, i have to make a aspx page to let iphone/android to Post form. After the data processing of request.form , i have response a JSON string in plain text. However *.aspx will enforce to render html,head,body tag,so how can i disable it?
I cannot use ashx, because the mobile have to post image via form, as i search the answer by google ,ashx cannot handle the http post files.
Edit: As SLaks said, ashx can handle POST file using "context.Request.Files" and it works.
I have an application that renders HTML code to allow users to preview an email that the app sends out. The HTML is held in a string that is then put into the text property of a label. This is working fine, but now I need to also add XML to the HTML string for an email listener when the user clicks the Send button. The problem is that the XML tags are being ignored by the browser.