Message 1 of 11
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Hi,
Trying to delete all borderdefinitions and titleblockdefinitions of a drawing.
Before deleting the definitions (border or titleblock) i check if they are referenced. If so i iterate over all the sheets in the drawing to delete them. The i can delete the definition (border or titleblock).
This works for the borders, but not for the titleblocks.
The osheet.TitleBlock.delete() gives a 'Object reference not set to an instance of an object' error !
foreach (Inventor.TitleBlockDefinition titleblockDefinition in oDrawDoc.TitleBlockDefinitions)
{
if (titleblockDefinition.Name.Contains("Iso-Mecotech"))
{
if (titleblockDefinition.IsReferenced)
{
foreach (Inventor.Sheet osheet in oDrawDoc.Sheets)
{
if (osheet.TitleBlock.Name == titleblockDefinition.Name)
{
osheet.TitleBlock.Delete();
}
}
}
titleblockDefinition.Delete();
}
}
I used the same code for the Borders without any problem
foreach (Inventor.BorderDefinition originalborderdef in oDrawDoc.BorderDefinitions)
{
if (originalborderdef.Name.Contains("Watermerk"))
{
if (originalborderdef.IsReferenced)
{
foreach (Inventor.Sheet sheet in oDrawDoc.Sheets)
{
if (sheet.Border.Name == originalborderdef.Name)
{
sheet.Border.Delete();
}
}
}
originalborderdef.Delete();
}
}
Solved! Go to Solution.