我一直在寻找小时,我似乎无法找到一个坚实的答案。我有一个带有内容控件的现有文档,需要使用外部数据编辑文本。如果其中一个控件的数据不存在,那么我需要用适当的通知来替换文本并更改字体颜色。更改OpenXML word文档(C#)中的字体颜色
我有文本条目和所有工作得很好,唯一不会做它的工作是改变字体颜色。我目前的代码并没有给我任何错误,并且通过这种方法运行得很好,但是当我查看完成的文档时,它仍然是普通的黑色文本。
我的颜色变化的方法,包括:(输入是所有内容控件的具有相同标记的列表)
public void SetBlueText(List<SdtElement> sdtElement)
{
foreach (SdtElement element in sdtElement)
{
if (element != null)
{
RunProperties runProperties = element.Descendants<RunProperties>().FirstOrDefault();
runProperties.Color = new DocumentFormat.OpenXml.Wordprocessing.Color() { Val = "0EBFE9" };
}
}
}
另外,简化了这两条线下降到只有这个/有相同的效果
element.Descendants<RunProperties>().FirstOrDefault().Color =
new DocumentFormat.OpenXml.Wordprocessing.Color() { Val = "0EBFE9" };