C# 中的幻灯片 object 中的项目 属性

Item property in Slides object in C#

我正在尝试使用 C# 创建一个函数来收集我的 PowerPoint 演示文稿的每个标题。 首先,我想收集给定幻灯片的标题(然后我将制作一个循环)。 但是我在 Slides object.

中没有 Item 属性
using Microsoft.Office.Interop.PowerPoint;
...
namespace TestTaskPane
{
    public partial class ThisAddIn
    {
    ...
      public string CollectTitles
      {
           Slide Sld = this.Application.ActivePresentation.Slides.Item(1)
      }

我有以下错误: 'Slides' 不包含 'Item' 的定义,并且找不到接受类型的第一个参数的扩展方法 'Item'(您是否缺少 using 指令或程序集引用?)

但是如果查看 MSDN 我可以看到幻灯片有一个项目 属性。

怎么了?

尝试 Application.ActivePresentation.Slides[0] 而不是 Application.ActivePresentation.Slides.Items(0)。使用 Slides[0] 你说得到 Slides.this[0] 这正是 Item 属性 所代表的。

已编辑以尝试解释为什么您可以直接访问幻灯片 属性。

我只想在 Slides 对象上使用普通数组迭代,请参阅下面的示例。

var p = this.Application.ActivePresentation; //your presentation

var titles = new List<Shape>();

for (int i = 0; i < p.Slides.Count; i++)
{
   titles.Add(p.Slides[i].Shapes.Title);
}