private void PasteInInventor(Inventor.Application InvApp, Inventor.AssemblyDocument OpenAssemblyDoc, string ChilDNodes_1, string ChilDNodes_2, string ChilDNodes_3, string ChilDNodes_4, string NameColumn)
{
Inventor.ContentCenter oContentCenter = InvApp.ContentCenter; //получаем ссылку на ContentCenter
Inventor.ContentTreeViewNode oContentNode = default;
oContentNode = oContentCenter.TreeViewTopNode.ChildNodes[ChilDNodes_1].ChildNodes[ChilDNodes_2].ChildNodes[ChilDNodes_3];
long AllPoint, NowPoint; //этими переменными реализован счётчик количества строк в библиотеке
NowPoint = 0;
foreach (Inventor.ContentFamily oFamily in oContentNode.Families)//тут бегаем по семействам в папке/подпапке узла
{
AllPoint = oFamily.TableRows.Count;
if (oFamily.DisplayName == ChilDNodes_4)
{
foreach (Inventor.ContentTableRow ContTableRow in oFamily.TableRows)//тут бегаем по строкам таблицы
{
NowPoint += 1;
var ContTableRow_Designation = ContTableRow.GetCellValue(NameColumn);
Inventor.MemberManagerErrorsEnum failureCM = default;
string MessageProbl = "You_have_a_Problem";
var CreateMem = oFamily.CreateMember(ContTableRow, out failureCM, out MessageProbl);
Inventor.TransientGeometry transientGeometry = InvApp.TransientGeometry;
var OpenDoc = OpenAssemblyDoc.ComponentDefinition.Occurrences.Add(CreateMem, transientGeometry.CreateMatrix());//создание вхождения
string txt = $"{NowPoint} из {AllPoint}";
EventArgs E = new EventArgs();
label1_Click(txt, E);//тут просто выводится счётчик
}
}
}
}