Visio Shape .SectionExists

时间:2015-11-30 10:58:57

标签: c# visio

我有以下代码:

var activeWindow = Application.ActiveWindow;

        foreach (Visio.Shape shapeItem in activeWindow.Selection)
        {
            System.Windows.Forms.MessageBox.Show(shapeItem.Name);
            if(shapeItem.SectionExists(visSectionConnectionPts, false) = false)
            {

            }
        }

我正在迭代一组形状并输出每个形状的名称。为了扩展这一点 - 我试图看看(对于每个选定的形状)是否存在visSectionConnectionPts部分 - 因为我试图将连接点添加到当前选定的形状。我收到两个错误:

  1. 非可撤销成员' IVShape.SectionExists [短,短]'不能像方法一样使用。
  2. 名称' visSectionConnectionPts'在当前背景下不存在。
  3. 如何进行上述操作?

1 个答案:

答案 0 :(得分:0)

正如@Jelly指出的那样,该方法返回一个short(在c#的情况下)并且两个参数都是short。因此,您需要使用限定枚举并将其转换为简短的:

if (shp.SectionExists[(short)Visio.VisSectionIndices.visSectionConnectionPts, 0] == 0)
{
    shp.AddSection((short)Visio.VisSectionIndices.visSectionConnectionPts);
}