我已经搜索了几个小时,但好像找不到确切的答案。我有一个包含内容控件的现有文档,需要使用外部数据编辑其中的文本。如果某个控件的数据不存在,则需要用适当的通知替换文本并更改字体颜色。
我的文字输入和所有工作都很好,唯一不能正常工作的部分是更改字体颜色。我目前的代码没有任何错误,并且正在通过该方法运行,但是当我查看完成的文档时,仍然是普通的黑色文本。
我的更改颜色的方法:(输入是具有相同标记的所有内容控件的列表)
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" };