2011-12-06 9 views
5

SdtCell y SdtBlock en OpenXml.Wordprocessing serializar ambos en <w:sdt> ¿cuál es la diferencia? Supongo que una es una celda de tabla, que es lo que parece implicar la documentación de Microsoft. Los detalles proporcionados son escasos en el mejor de los casos, aclare.OpenXml: ¿Cuál es la diferencia entre SdtBlock y SdtCell?

Respuesta

2

Desde las páginas de MSDN para sdtcell y sdtblock, énfasis mío continuación

La principal diferencia es el tipo de contenido <w:sdtContent> que tendrá dentro de la <w:sdt>

SDTCELL

Este elemento especifica la presencia de una etiqueta de documento estructurado alrededor de una sola celda de tabla. Los dos elementos secundarios de este elemento se usarán para especificar las propiedades y el contenido de la etiqueta del documento estructurado actual a través de los elementos sdtPr y sdtContent, respectivamente.

[Ejemplo: considere una etiqueta de documento estructurado con la empresa de nombre descriptivo que debe ubicarse alrededor de una sola celda de tabla en un documento de WordprocessingML. Este requisito se especificaría como sigue en el 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> 

El elemento sdt especifica la etiqueta de documento estructurado, el elemento sdtPr niño contiene la propiedad de nombre y agradable, situado a la compañía, y el elemento sdtContent contiene una sola celda de tabla (es una etiqueta de documento estructurado a nivel de celda).

SDTBLOCK

Este elemento especifica la presencia de una etiqueta de documento estructurado alrededor de una o más estructuras a nivel de bloque (párrafos, tablas, etc.). Los dos elementos secundarios de este elemento se usarán para especificar las propiedades y el contenido de la etiqueta del documento estructurado actual a través de los elementos sdtPr y sdtContent, respectivamente.

[Ejemplo: considere una etiqueta de documento estructurado con la dirección de nombre descriptivo que debe ubicarse alrededor de un solo párrafo en un documento de WordprocessingML. Este requisito se especificaría como sigue en el 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> 

El elemento sdt especifica la etiqueta de documento estructurado, el elemento sdtPr hijo contiene la propiedad de nombre y agradable, situado a tratar, y el elemento sdtContent contiene un solo párrafo (es una etiqueta de documento estructurado a nivel de bloque).

+0

Entonces, si entiendo esto correctamente, ¿solo usaría una sdtcell en caso de que quisiera etiquetar una sola celda en una tabla existente? – emd

Cuestiones relacionadas