我正在尝试编写双向XHTML
到FlowDocument
(FD)XSLT转换,而且我遇到了一个反复出现的问题 - 有些事情你可以用HTML来做在FD中有意义(至少在这个早期版本中)。例如,XHTML具有accesskey
属性的概念,但没有相应的FD XAML元素。
即使FD没有用它,我还需要一种方法将这些信息存储在FD的XAML中,以便我以后可以检索它。有点像:
<xsl:template match=@accesskey>
<InvisibleElement name="accesskey" value="." />
</xsl:template>
...但据我所知,没有 FD元素没有相应的显示。我想我可以使用空的<Span />
或<Run />
,但如果有人编辑文档并无意中添加了我不期望的内容,则可能会导致问题。
另一种选择可能是:
<xsl:template match="@accesskey">
<InlineUIContainer Tag="accesskey">
<TextBlock Visibility="Collapsed" Tag="{.}" />
</InlineUIContainer>
</xsl:template>
因为它不可见,所以它是不可编辑的。
建议?