有人可以建议将 HTML 内容动态添加到 ASP.NET 页面的“正确”方法是什么吗?
我知道以下声明性方法。
//Declaration
<%= MyMethodCall() %>
//And in the code behind.
protected String MyMethodCall()
{
return "Test Value";
}
有没有更好或最佳实践的方法?
编辑:我正在根据位于特定文件夹中的图像动态构建 Galleriffic 照片库。
有人可以建议将 HTML 内容动态添加到 ASP.NET 页面的“正确”方法是什么吗?
我知道以下声明性方法。
//Declaration
<%= MyMethodCall() %>
//And in the code behind.
protected String MyMethodCall()
{
return "Test Value";
}
有没有更好或最佳实践的方法?
编辑:我正在根据位于特定文件夹中的图像动态构建 Galleriffic 照片库。
取决于你想做什么。
对于控件/文本,我通常使用 aLiteralControl
并将Text
属性设置为要添加的 HTML,然后可以将此控件添加到页面上您希望它出现的任何位置
LiteralControl 参考在 这里
好吧,看你想要的 Galleriffic,我想它会像这样伪出现......
LiteralControl imageGallery = new LiteralControl();
string divStart = @"<div id='thumbs'><ul class='thumbs noscript'>";
imageGallery.Text += divStart;
foreach ([image in images])
{
string imageHTML = @"<li><a class='thumb' name='optionalCustomIdentifier' ref='path/to/slide' title='your image title'>
<img src='path/to/thumbnail' alt='your image title again for graceful degradation' /></a>
<div class='caption'>[caption]<div></li>";
imageGallery.Text += imageHTML;
}
string divEnd = @"</ul></div>";
imageGallery.Text += divEnd;
this.[divOnPage].Controls.Add(imageGallery);
象素:
<div id="DIV1" runat="server"></div>
后面的代码:
DIV1.InnerHtml = "some text";
有几种方法可以做到这一点,使用哪种方法实际上取决于您的场景和偏好。
另外一个选项
//.aspx
<asp:Literal ID="myText" runat="server"></asp:Literal>
//.aspx.cs
protected Literal myText;
myText.Text = "Hello, World!";