因为直接打开InfoPath的配置文件进行编辑会有些无从下手,所以下面以修改“节”的Margin为例来说明手工编辑InfoPath文件的过程。
1. 新建一个“节”,并在此节中创建一个数字类型字段“n1”。
2. 为此节创建一个规则,“if n1 > 0”,将背景设为红色。
3. 点击:文件 > 发布 > 导出 > 导出源文件,将InfoPath文件导出到指定位置。
4. 关闭InfoPath设计器(必须先关闭),然后用文本编辑工具打开view1.xsl文件。(默认创建的视图文件被命名为view1.xsl,如果要编辑的不是默认创建的视图,则应打开与视图名称对应的xsl文件。)
5. 找到如下的XML内容:
<xsl:attribute name="style">BORDER-BOTTOM: 0pt; BORDER-LEFT: 0pt; WIDTH: 100%; MARGIN-BOTTOM: 0px; BORDER-TOP: 0pt; BORDER-RIGHT: 0pt;<xsl:choose>
<xsl:when test="../my:n1 > 0">BACKGROUND-COLOR: #ff6600; caption: Rule 1;</xsl:when>
</xsl:choose>
</xsl:attribute>
增加额外的样式信息,如Margin-Left:
<xsl:attribute name="style">BORDER-BOTTOM: 0pt; BORDER-LEFT: 0pt; WIDTH: 100%; MARGIN-BOTTOM: 0px; BORDER-TOP: 0pt; BORDER-RIGHT: 0pt;<xsl:choose>
<xsl:when test="../my:n1 > 0">BACKGROUND-COLOR: #ff6600; caption: Rule 1; MARGIN-LEFT: <xsl:value-of select="../my:n1"/>px;</xsl:when>
</xsl:choose>
</xsl:attribute>
6. 保存编辑后的XSL文件,并关闭。通过manifest.xsf打开整个导出的InfoPath文件组。
7. 测试无误后另存为xsn文件,如MarginForm.xsn。
当然,手工编辑InfoPath文件的方式并不为官方所推荐,所以若无很特殊的需求,应尽量避免使用。