インサート内の属性を検索する

インサート内の属性を検索する方法

問題: インサート内の属性を検索する方法 (CADNET-8050)。

ヒント: これを行うには、CadEntityTypeName.ATTDEF タイプのエンティティを取得し、その中に “StringToSearch” の値を持つ PromptString フィールドを含めます。

例:

foreach (CadBaseEntity entity in cadImage.Entities)
{
if (entity.TypeName == CadEntityTypeName.INSERT)
{
CadInsertObject insert = (CadInsertObject)entity;
bool stop = false;
CadBlockEntity block = cadImage.BlockEntities[insert.Name];
foreach (CadBaseEntity e in block.Entities)
{
if (e.TypeName == CadEntityTypeName.ATTDEF)
{
CadAttDef attDef = (CadAttDef)e;
if (attDef.PromptString == "StringToSearch")
{
newEntities.Remove(entity);
stop = true;
break;
}
}
}
if (stop)
{
break;
}
}
}
cadImage.Entities = newEntities.ToArray();
cadImage.UpdateSize();