我发现一张桌子有填充样式,但它的[TestClass]
public class UnitTest1
{
[TestMethod]
public void DivideTest1()
{
// Func<Task> action = async()=> { AsyncMathsStatic.Divide(4, 0); };
//action.Should().Throw<DivideByZeroException>();
Assert.ThrowsExceptionAsync<DivideByZeroException>(async () =>
AsyncMathsStatic.Divide(4, 0));
}
}
public class AsyncMathsStatic
{
public static async void Divide(int v1, int v2)
{
try
{
if (v1/v2 > 1)
{
// do something time consuming
}
}
catch (DivideByZeroException ex)
{
throw;
}
}
}
没有w:tbl
。在这种情况下,具有w:tblStyle
和w:style
属性的w:type="table"
是否有效?
背景是我正在使用XSLT转换Open XML标记。
答案 0 :(得分:1)
您问题的简短答案是“是”;如果未明确分配任何样式,则将应用默认样式。
WordprocessingML中有四种不同类型的样式,即paragraph
,character
,table
和numbering
样式。对于每种类型(例如table
),通过具有属性w:tbl
,一种样式被标记为相关Open XML元素(例如w:default="1"
元素)的默认样式。典型的默认样式如下所示:
<w:style w:type="paragraph" w:default="1" w:styleId="Normal">
<w:name w:val="Normal"/>
<w:qFormat/>
</w:style>
<w:style w:type="character" w:default="1" w:styleId="DefaultParagraphFont">
<w:name w:val="Default Paragraph Font"/>
<w:uiPriority w:val="1"/>
<w:semiHidden/>
<w:unhideWhenUsed/>
</w:style>
<w:style w:type="table" w:default="1" w:styleId="TableNormal">
<w:name w:val="Normal Table"/>
<w:uiPriority w:val="99"/>
<w:semiHidden/>
<w:unhideWhenUsed/>
<w:tblPr>
<w:tblInd w:w="0" w:type="dxa"/>
<w:tblCellMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:bottom w:w="0" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tblCellMar>
</w:tblPr>
</w:style>
<w:style w:type="numbering" w:default="1" w:styleId="NoList">
<w:name w:val="No List"/>
<w:uiPriority w:val="99"/>
<w:semiHidden/>
<w:unhideWhenUsed/>
</w:style>
例如,如果您有w:p
(段落),w:r
(运行)或w:tbl
(表)元素,而没有为其分配明确的样式(例如,使用{ {1}},w:pStyle
或w:rStyle
),这些类型的元素的默认样式将适用。