コネクタの接続先シェイプを取得する
ダイアグラム上に表示されているコネクタの接続先シェイプを列挙する例です。
public void EnumerateConnectorPoint(ICommandContext c, ICommandParams p)
{
IDiagram diagram = c.App.Workspace.CurrentEditor as IDiagram;
if (diagram == null) return;
// 表示されているコネクタを取得します
IConnectorCollection connectors = diagram.Connectors;
// コネクタごとに処理をします
foreach (IConnector connector in connectors)
{
c.App.Output.WriteLine("sample", $"コネクタのシェイプ定義名 : {connector.ElementDefinition.DisplayName}");
c.App.Output.WriteLine("sample", $" コネクタ始点に接続されたシェイプのモデル : {connector.StartPoint.Model.Name}");
c.App.Output.WriteLine("sample", $" コネクタ終点に接続されたシェイプのモデル : {connector.EndPoint.Model.Name}");
}
}
備考
上記のサンプルコードでは試験的に実装された次のAPIを使用しています。
- IElementDef.DisplayName プロパティ
これらのAPIは品質保証しておらず、API仕様にも未記載のものです。ご利用される場合はユーザー様の責任でご利用ください。