通过XSLT显示c#控件

本文关键字:控件 显示 XSLT 通过 | 更新日期: 2023-09-27 18:08:11

是否有通过XSLT显示c#控件的方法?

我正在努力处理这个问题,但无法将值传递给控件。

下面是我试图渲染出来的样本…

<xsl:text disable-output-escaping="yes">&lt;Control:Content runat="server" contenttype="&lt;xsl:value-of select="subnode/text()"/&gt;" /&gt;</xsl:text>

这里控件应该生成如下所示:对于参数"contenttype"的值应该动态传递…

<Control:Content runat="server" contenttype="ABC123" />

请帮帮我。

通过XSLT显示c#控件

对于这个,您不需要(避免使用DOE总是一个好主意)。

这是一个简洁的解决方案,只需使用<xsl:output method="text">:

<xsl:stylesheet version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output method="text"/>
 <xsl:template match="/*">
  <xsl:text>&lt;Control:Content runat="server" contenttype="</xsl:text>
  <xsl:value-of select="/subnode"/>
  <xsl:text>" /&gt;</xsl:text>
 </xsl:template>
</xsl:stylesheet>

:

<subnode>html</subnode>

生成所需的正确输出:

<Control:Content runat="server" contenttype="html" />

我们在工作中使用这种技术,但是,我们首先将控件转换为xml,然后使用xslt在页面中呈现它。