在C#中更改visio形状位置

在C#中更改visio形状位置,c#,position,visio,shapes,C#,Position,Visio,Shapes,您好,我正在与c#合作,在这里我为Visio插入了axDrawingControl 现在我的问题是,如果我插入一个visio形状 currentPage.Drop(positionStencil.Masters["Pos1"], 0.8, 4.2); 现在如何更改形状的位置 Thx for your help设置PinX和PinY单元格。通常,您会将这些设置为要显示的新位置的中心 var shape = currentPage.Drop(...); shape.CellsU["PinX"].F

您好,我正在与c#合作,在这里我为Visio插入了axDrawingControl

现在我的问题是,如果我插入一个visio形状

currentPage.Drop(positionStencil.Masters["Pos1"], 0.8, 4.2);
现在如何更改形状的位置


Thx for your help

设置PinXPinY单元格。通常,您会将这些设置为要显示的新位置的中心

var shape = currentPage.Drop(...);
shape.CellsU["PinX"].Formula = "2";
shape.CellsU["PinY"].Formula = "2";
(上面的示例是针对VisualStudio2010中的C#的,在VisualStudio2008中代码看起来不那么干净)

为了完整起见:您应该仔细阅读LocPinXLocPinY单元格,因为它们会影响PinX和PinY的解释方式。它不应该对你的情景思维有任何影响

如果必须对多个形状而不是一个形状执行此操作,则使用SetFormulas方法(可在页面形状对象上找到,具体取决于您的需要)会更有效