Asp.net ASP:DynamicControl呈现HTML而不是显示源代码
我有一个ASP动态脚手架项目,我在其中定制了一个详细信息视图。在我的数据源中,我有几个包含HTML的字段,我希望在页面上显示呈现的HTML,而不是当前的源HTML。控件看起来像这样Asp.net ASP:DynamicControl呈现HTML而不是显示源代码,asp.net,dynamic-controls,Asp.net,Dynamic Controls,我有一个ASP动态脚手架项目,我在其中定制了一个详细信息视图。在我的数据源中,我有几个包含HTML的字段,我希望在页面上显示呈现的HTML,而不是当前的源HTML。控件看起来像这样 <tr> <td class="DDLightHeader"> <asp:Label ID="lblStatementHtml" runat="server" Text="Statement" /> </td> <td> &l
<tr>
<td class="DDLightHeader">
<asp:Label ID="lblStatementHtml" runat="server" Text="Statement" />
</td>
<td>
<asp:DynamicControl ID="dcStatementHtml" runat="server" DataField="StatementHtml" />
</td>
</tr>
我对如何继续感到困惑,因为该控件的默认视图是Text.ascx,它显然只是一个文本(与我在我的网站上呈现HTML时使用的基本控件相同。我可以创建一个新的FieldTemplate来呈现HTML,但如何强制HTML呈现而不是显示其源代码视图。为了解决上述问题,我必须创建一个新的FieldTemplate HTML.ascx
<%@ Control Language="C#" CodeBehind="HTML.ascx.cs" Inherits="ProductDynamicCMS.HTML" %>
<asp:Literal runat="server" ID="Literal1" />
然后将该类的UIHint应用于details视图模板中的字段显示
<tr>
<td class="DDLightHeader">
<asp:Label ID="lblStatementHtml" runat="server" Text="Statement" />
</td>
<td>
<asp:DynamicControl ID="dcStatementHtml" runat="server" DataField="StatementHtml" UIHint="HTML" />
</td>
</tr>
<>和所有都很好。你确定它是一个你应该使用的动态控件吗?也许考虑一个响应。写到页面的一个声明区域。写会插入HTML,所以它应该渲染。
<tr>
<td class="DDLightHeader">
<asp:Label ID="lblStatementHtml" runat="server" Text="Statement" />
</td>
<td>
<asp:DynamicControl ID="dcStatementHtml" runat="server" DataField="StatementHtml" UIHint="HTML" />
</td>
</tr>