[英]Render PlaceHolder within li tags
我遇到下一種情況:在一個ITemplate對象中,我正在渲染一個帶有<li>
元素的Repeater,通常這樣做是這樣的:
Dim literalControl as new LiteralControl
literalControl = "<li>blah blah</li>"
container.Controls.Add(literalControl)
但是在某一點上,我需要添加一個由另一個功能返回的PlaceHolder,該功能還可以用於其他目的,不僅是該轉發器,而且我得到的是這樣的:
Dim literalControl as new LiteralControl
Dim plTable As PlaceHolder
literalControl = "<li>blah blah</li>"
MyObject.Render(AComplexObect, plTable)
container.Controls.Add(literalControl)
container.Controls.Add(plTable)
這很好用,但是placehoder中的元素留在 <li>
標記之外,我希望它在里面。 plTable
有許多不同類型的元素,因此我將其內容循環轉換為Literal或LiteralControl會引發錯誤,因為並非所有元素都可以轉換為這些類型。
我有什么選擇?
謝謝
這對您有用嗎:
Dim literalControl As New LiteralControl
Dim plTable As PlaceHolder
Dim swWriter As New StringWriter
Dim htwWriter As New HtmlTextWriter(swWriter)
MyObject.Render(AComplexObect, plTable)
MyObject.RenderControl(htwWriter)
literalControl.Text = "<li>" & swWriter.ToString() & "</li>"
container.Controls.Add(literalControl)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.