2011-07-25 23 views

回答

2
var h4 = new HtmlGenericControl("h4"); 
h4.InnerHtml = "Heading Text"; 
parentControl.Controls.Add(h4); 
1

你可以使用一個asp:Literal控制 - 這只是寫出你設置它的確切文字。

E.g:

Dim myLiteral as Literal = new Literal() 
myLiteral.Text = "<h4>My Heading</h4>" 

添加您的文字頁面。

+0

我需要它是在H4但實際的HTML源代碼,不僅僅是在那裏。 – seekerOfKnowledge

+0

它會在呈現給瀏覽器的源文件中寫出實際的

標記。你的意思是你想

標籤和你的其他服務器標籤一起存放在aspx代碼中嗎? –

+0

我在添加該示例之前添加了該評論。 – seekerOfKnowledge

1

沒有什麼像<asp:H4 />控制。但是,您可以在代碼後面通過HtmlGenericControl類型在頁面中添加任何HTML元素。

例如,創建它:

HtmlGenericControl headerControl = new HtmlGenericControl(HtmlTextWriterTag.H4.ToString()); 
headerControl.ID = "myHeader"; 
headerControl.InnerHtml = "Hello World"; 
placeHolder.Controls.Add(headerControl); 

從代碼中訪問它背後更高版本:

HtmlGenericControl headerControl = FindControl("myHeader") as HtmlGenericControl; 
+0

如果你給一個元素一個'id'和一個'runat =「server」',它應該是頁面對象的另一個屬性,就像普通的ASP.Net控件(例如Label)一樣。因此,不要使用'FindControl',而只需執行'this.myHeader'。 –

+0

不幸的是,問題是如何動態添加*。 –

+0

@詹姆斯,正確...更新了答案。 – Kon

2

我建議創建以HtmlGenericControl代碼隱藏。這些超過面值的好處是,他們是正確的HtmlControls,有能力爲您編程設置和修改屬性,如InnerHtmlCssClassStyle

HtmlGenericControl myH4 = new HtmlGenericControl("h4") 
{ 
    ID = "myH4", 
    InnerHtml = "Your Heading Here" 
}); 
yourContainerControl.Controls.Add(myH4);