我正在尝试编写一种方法,以编程方式将块导入到绘图中,以便我的.NET插件可以将这些块的实例放入绘图中。现在我的方法看起来像这样:
/// <summary>
/// Method to programatically import all the blocks in a given list
/// </summary>
public static void ImportBlocks(string[] filesToTryToImport)
{
//Importing all the blocks
for (int i = 0; i < filesToTryToImport.Count(); i++)
{
if (filesToTryToImport[i].EndsWith(".dwg"))
{
try
{
Transaction tr = _database.TransactionManager.StartTransaction();
DocumentLock docLock = _activeDocument.LockDocument();
using (tr)
using (docLock)
{
BlockTable blkTbl = tr.GetObject(_database.BlockTableId, OpenMode.ForRead) as BlockTable;
// ToDo: Add files
}
}
catch (Autodesk.AutoCAD.Runtime.Exception ex)
{
_editor.WriteMessage("\nError during copy: " + ex.Message);
}
}
}
}
我想要的是,当我去插入一个块时,其文件路径在字符串数组filesToTryToImport中的所有块都显示为选项
因此,例如,如果One-Inch-Block最初不在列表中,但是它的文件路径作为传递给此方法的数组中的字符串传递,则它成为一个选项。