SdtCell
中的{p> SdtBlock
和OpenXml.Wordprocessing
都会序列化为<w:sdt>
,那有什么区别?我假设一个是表格单元格,这是Microsoft文档似乎暗示的内容。提供的详细信息最多,请澄清。
答案 0 :(得分:4)
在sdtcell和sdtblock的MSDN页面中,强调我的
主要区别在于<w:sdtContent>
<w:sdt>
<强> SDTCELL 强>
此元素指定在单个表格单元格周围存在结构化文档标记。此元素的两个子元素应分别用于通过sdtPr和sdtContent元素指定当前结构化文档标记的属性和内容。
[示例:考虑具有友好名称公司的结构化文档标记,该公司必须位于WordprocessingML文档中的单个表格单元格周围。此要求将在WordprocessingML中指定如下:
<w:tr>
<w:sdt>
<w:sdtPr>
<w:alias w:val="company"/>
</w:sdtPr>
<w:sdtContent>
<w:tc>
…
</w:tc>
</w:sdtContent>
</w:sdt>
…
</w:tr>
sdt元素指定结构化文档标记,子sdtPr元素包含设置为company的友好名称属性,sdtContent元素包含单个表格单元格(它是单元格级结构化文档标记)。
<强> SDTBLOCK 强>
此元素指定在一个或多个块级结构(段落,表格等)周围存在结构化文档标记。此元素的两个子元素应分别用于通过sdtPr和sdtContent元素指定当前结构化文档标记的属性和内容。
[示例:考虑具有友好名称地址的结构化文档标记,该地址必须位于WordprocessingML文档中的单个段落周围。此要求将在WordprocessingML中指定如下:
<w:body>
<w:sdt>
<w:sdtPr>
<w:alias w:val="address"/>
</w:sdtPr>
<w:sdtContent>
<w:p>
…
</w:p>
</w:sdtContent>
</w:sdt>
…
</w:body>
sdt元素指定结构化文档标记,子sdtPr元素包含设置为address的友好名称属性,并且sdtContent元素包含单个段落(它是块级结构化文档标记)