【发布时间】:2021-12-22 16:11:54
【问题描述】:
在 Eyeshot 中,从 Model(即 BlockReference)中删除 Entity 的最佳方法是什么?
是否有方法可以帮助清理基于BlockReference 的所有Blocks?
// assume "model1" is the Eyeshot control
List<Entity> entities = GetEntitiesToRemove();
foreach (var entity in entities)
{
if (entity is BlockReference reference)
{
// What to do here to clean up the associated blocks? This code will only find the
// parent block for the entity
var block = model1.Blocks.FirstOrDefault(b => b.Name == reference.BlockName);
if (block != null)
{
model1.Blocks.Remove(block); //This is only removing the parent block
}
}
model1.Entities.Remove(entity);
}
【问题讨论】: