用XsltArgumentList实现xsl的参数调用
来源:互联网 发布时间:2008-09-04 11:24:00
XmlDocument XmlDoc=new XmlDocument();
XmlDoc.Load(strFilePath);
XslTransform xslt = new XslTransform();
xslt.Load(strXslPath);
XsltArgumentList xslArg = new XsltArgumentList();
xslArg.AddParam("Key1", "",IXPath);
xslArg.AddParam("Path", "",strPath);
StringBuilder sb = new StringBuilder("");
StringWriter sw = new StringWriter(sb);
XmlTextWriter writer = new XmlTextWriter(sw);
xslt.Transform(XmlDoc,xslArg,writer,null);
writer.Close();
HXML.InnerHtml=sb.ToString();
这是xsl文件
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:param name="Key1"/>
<xsl:param name="Path"/>
<xsl:template match="/">
<xsl:apply-templates select="/DB/L[@Key=$Key1]" />
</xsl:template>
<xsl:template match="L[@Type='1']">
<a target="_blank">
<xsl:attribute name="href"><xsl:value-of select="@Link" /></xsl:attribute>
<img border="0">
<xsl:attribute name="width"><xsl:value-of select="@width" /></xsl:attribute>
<xsl:attribute name="height"><xsl:value-of select="@height" /></xsl:attribute>
<xsl:attribute name="src"><xsl:value-of select="$Path" />Res/AD/<xsl:value-of select="@File" /></xsl:attribute>
</img>
</a>
</xsl:template>
<xsl:template match="L[@Type='2']">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" >
<xsl:attribute name="width"><xsl:value-of select="@width" /></xsl:attribute>
<xsl:attribute name="height"><xsl:value-of select="@height" /></xsl:attribute>
<param name="movie"><xsl:attribute name="value"><xsl:value-of select="$Path" />Res/AD/<xsl:value-of select="@File" /></xsl:attribute></param>
<param name="quality" value="http://www.chinaz.com/high"/>
<embed quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash">
<xsl:attribute name="width"><xsl:value-of select="@width" /></xsl:attribute>
<xsl:attribute name="height"><xsl:value-of select="@height" /></xsl:attribute>
<xsl:attribute name="src"><xsl:value-of select="$Path" />Res/AD/<xsl:value-of select="@File" /></xsl:attribute>
</embed>
</object>
</xsl:template>
</xsl:stylesheet>
xml文件
<?xml version="1.0" encoding="GB2312"?>
<DB>
<L Name="测试1" height="100" width="100" Link="http://www.chinaz.com" File="20056171345164340.gif" Key="200561713451653143405" Type="1" />
</DB>
猜你喜欢
- 废话不多说了,直接给大家贴代码了,具体代码如下所示:--sql中的 where 、group by 和 having 用法解析--如果要用到
- 一直觉得wxpython占用内存比较多,在工作中写的一些小程序应用,一对比其它的小程序,发现内存相差确实有点大。测试了下QT框架import
- 注意:如果您尚未阅读过原来那篇老文章《悟透JavaScript》,请先行阅读该文,以了解上下文关系。在上面的示例中,我们定义了两个语法甘露,
- 开发环境说明:python 3.6.2Vs studio 2017 (已经安装C++桌面开发)我的vcvarsall.bat 路径为:&qu
- 最近被“模块化”缠身,又是文章又是PPT的,被逼着想了很多相关的东西。整理下我这段时间对于“模块化”的思考,大多都是我自己从事页面重构这份工
- 在pytest自动化测试中,如果只是简单的从应用的角度来说,完全可以不去了解pytest中的显示信息的部分以及原理,完全可以通过使用推荐的p
- 关于python数据分析常用库pandas中的DataFrame的loc和iloc取数据 基本方法总结归纳及示例如下:1.准备一组DataF
- 数字字符串前后有空格没事:>>> print(int(" 3 "))3但是下面这种带小数点的情况是不可
- 在命令行中输入命令并不是一个好主意,会造成安全问题。但是如果你决定去写一个应用,而这个应用需要在命令行中使用密码或者其他敏感信息。那么,你能
- 本文实例讲述了python自动zip压缩目录的方法。分享给大家供大家参考。具体实现方法如下:这段代码来压缩数据库备份文件,没有使用pytho
- os 包 和 bufio 包Go 标准库的 os 包,为我们提供很多操作文件的函数,如 Open(name) 打开文件、Create(nam
- 一、设置SQLServer身份验证1、按下windows+R,弹出运行框。2、在弹出框中输入cmd,按下enter键。3、在dos命令窗口输
- 代码如下:CREATE FUNCTION dbo.f_splitstr( @str varchar(8000) )RETURNS
- 1.使用open()函数打开文件夹在读取一个文件的内容之前,需要先打开这个文件。在Python程序中可以通过内置函数open()来打开一个文
- 本文总结分析了selenium2.0中常用的python函数。分享给大家供大家参考,具体如下:新建实例driver = webdriver.
- 安装paramiko后,看下面例子:import paramiko#设置ssh连接的远程主机地址和端口t=paramiko.Transpor
- 前言在python中, 切片是一个经常会使用到的语法, 不管是元组, 列表还是字符串, 一般语法就是:sequence[ilow:ihigh
- 事情是这样的五一假期第一天值班隔壁有点喜欢的小姐姐突然跑过来跟我聊天“微信账号切换来切换去 特别麻烦”“怎么能同时打开多个呢?”我心想,你有
- Python操作Excel之openpyxlopenpyxl是一个Python库,用来读写Excel2010 xlsx/xlsm/xltx/
- 简单的‘Hello World!'Python命令行假设你已经安装好了Python, 那么在Linux命令行输入:$python将直