代码背后的HTML

时间:2011-02-09 12:50:05

标签: c# asp.net

我想从后面的代码(asp.net c#)插入带有一些控件+样式的html,我该怎么办?

5 个答案:

答案 0 :(得分:4)

您可以使用<asp:PlaceHolder>然后添加控件。

e.g。

Image img = new Image();
img.ImageUrl = "/someurl.jpg";
img.CssClass = "someclass";
img.ID = "someid";
img.AlternateText = "alttext"

PlageHolderId.Controls.Add(img);

这会产生html

<img src="/someurl.jpg" class="someclass" id="someid" alt="alttext" />

然后你可以执行任何控制,文字,超链接,按钮,表等...

答案 1 :(得分:1)

您可以在标记中添加<asp:Literal>个控件,然后在代码隐藏中设置Text个。 请务必设置Mode="PassThrough"以防止它们转义HTML。

您可以添加服务器端控件,将其添加到任何现有控件的Controls集合中(例如<asp:Panel>

答案 2 :(得分:0)

<asp:PlaceHolder><head>

中的模板文件中添加一些<body>

然后使用PlaceHolder1.Controls.Add();

答案 3 :(得分:0)

我放了一个<asp:Panel ID="myPanel" runat="server"/>,在代码隐藏中我添加了控件:

myPanel.Controls.Add(...)

如果要直接向面板插入HTML代码,请使用

myPanel.Controls.Add(new LiteralControl("Your HTML goes here!"))

答案 4 :(得分:0)

您可以使用HtmlGenericControl

代替Literal控件
HtmlGenericControl div = new HtmlGenericControl();
div.ID = "div";
div.TagName = "div";
div.Attributes["class"] = "container";
form1.Controls.Add(div);