PowerPoint VSTO 加载项 - 添加带有标签的形状

PowerPoint VSTO Add-in - add a shape with a tag

我想在 C# .NET 中以编程方式将形状添加到 PowerPoint 的当前幻灯片中

因此,我创建了一个 VSTO 加载项,其中包含一个带有按钮 "Add Shape" 的功能区。 单击此按钮时,将执行以下代码:

Globals.ThisAddIn.Application.ActiveWindow.View.Slide.Shapes.AddShape(
    Microsoft.Office.Core.MsoAutoShapeType.msoShapeRectangle, 0, 0, 10, 20);

执行此代码时,它会正确地向当前幻灯片中添加一个矩形形状。

我想稍后修改这个形状(例如;改变它的宽度)。为了能够做到这一点,我在某处读到形状应该有一个唯一的标识符,这可以使用 Tag?

来实现

如果可以,请问如何添加形状并在新添加的形状上设置标签,以便我稍后对其进行操作?

此外,您如何循环访问当前幻灯片上的形状集合,以便您可以检查形状的标签以查看是否是我要修改的形状?

.AddShape 方法可以return 引用您刚刚添加的形状。 为了简单起见,您需要这样做。

形状有一个 .Tags 对象 .Tags 对象有一个 .Add 方法

因此假设引用 oShape 中的形状,您可以这样做(同样在 VBA 中,您必须翻译):

oShape.Tags.Add "MyTagName", "MyTagValue"

有关 return 对具有给定标签值的形状的引用的更多信息和示例 (VBA) 函数,您可以访问我的 PPT 常见问题解答网站上的此页面:

使用标签(以及一些关于函数的知识) http://www.pptfaq.com/FAQ00815_Working_with_Tags_-and_a_bit_about_Functions-.htm