我有一个带有内容的单元格。我想删除部分内容,但使用持久性样式格式。我尝试使用功能Substring(),但是它不保存样式格式
例如:
我的手机:
想看看:
var firstDot = getCellValue.ToString().IndexOf(".");
var strWithoutBold = ws.Cell(1, 1).Value.ToString().Substring(firstDot);
答案 0 :(得分:1)
您需要使用单元格的RichText
属性。首先从该单元格复制缩短的文本,然后清除该单元格并插入RichText
的其余部分:
int firstDot = ws.Cell(1, 1).GetString().IndexOf(".");
IXLFormattedText<IXLRichText> strWithoutBold = ws.Cell(1, 1).RichText.Substring(firstDot);
ws.Cell(1, 1).RichText.ClearText();
foreach (IXLRichString rt in strWithoutBold)
{
ws.Cell(1, 1).RichText.AddText(rt.Text).CopyFont(rt);
}
PS1:使用点的索引时,请保留点(粗体)。您可能需要+1
索引。
PS2:类似于您的previous问题,这仅适用于0.92以下的ClosedXML版本。也许我会看一下库,然后尝试制作一个更简单的解决方案。