为什么Powerpoint VSTO加载项TextRange.Find(str)返回null?

时间:2017-03-27 13:18:47

标签: c# textbox vsto powerpoint add-in

我正在尝试使用加载项格式化书面文本。按钮代码应该在幻灯片中找到字符串并相应地更改它。

详细说明:

代码循环每张幻灯片中的幻灯片和形状。当它找到包含字符串“CO2”的文本框或其他形状时,应将其添加到列表中。然后它会纠正它。

在特定幻灯片中,只有一个文本框包含“CO2”字符串,TextRange.Find(“CO2”)返回null,这会引发异常。

string co2 = "CO2"
if (shp.HasTextFrame == OfC.MsoTriState.msoTrue && shp.TextFrame.TextRange.Text.Contains(co2))
{
   int index = textRange.Text.IndexOf(co2);
   while (index != -1)
   {
      var textRangeCO2 = textRange.Find(co2, index);
   }
}

在此代码中,textRangeCO2变为null,其他文本框没有任何问题。

该特定文本框可能存在什么问题。当我将下一个文本框复制到同一个地方并将其中的字符串更改为“CO2”时,代码无任何问题。

0 个答案:

没有答案