Hide or Show First Column in Hole Table (C#)
This example shows how to hide or show the first column in a hole table.
//-------------------------------------------------------------------
// Preconditions:
// 1. Drawing document is open in which a hole
// table
exists.
// 2. The Hole Table feature is selected in
// the
FeatureManager design tree
//
// Postconditions: First column is hidden if shown and
// shown
if hidden.
//--------------------------------------
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
using System;
using System.Diagnostics;
namespace ColumnHiddenTableAnnotation_CSharp.csproj
{
partial
class SolidWorksMacro
{
public
void Main()
{
ModelDoc2
swModel = default(ModelDoc2);
SelectionMgr
swSelMgr = default(SelectionMgr);
object[]
swHoleTableAnnotation = new object[1];
TableAnnotation
swTableAnnotation = default(TableAnnotation);
Annotation
swAnnotation = default(Annotation);
HoleTable
swHoleTable = default(HoleTable);
swModel
= (ModelDoc2)swApp.ActiveDoc;
swSelMgr
= (SelectionMgr)swModel.SelectionManager;
if
((swSelMgr.GetSelectedObjectCount() == 0 | !(swSelMgr.GetSelectedObjectType(1)
== (int)swSelectType_e.swSelHOLETABLEFEATS)))
{
System.Windows.Forms.MessageBox.Show("Please
select a Hole Table feature in the FeatureManager design tree.");
return;
}
swHoleTable
= (HoleTable)swSelMgr.GetSelectedObject6(1, -1);
swHoleTableAnnotation
= (object[])swHoleTable.GetTableAnnotations();
swTableAnnotation
= (TableAnnotation)swHoleTableAnnotation[0];
swAnnotation
= (Annotation)swTableAnnotation.GetAnnotation();
//
If TAG column hidden, then show it
if
((swTableAnnotation.get_ColumnHidden(0)))
{
Debug.Print("
TAG column hidden before API call: " + swTableAnnotation.get_ColumnHidden(0));
swTableAnnotation.set_ColumnHidden(0, false);
Debug.Print("
TAG column hidden after API call: " + swTableAnnotation.get_ColumnHidden(0));
}
else
{
//
If TAG column shown, then hide it
Debug.Print("
TAG column hidden before API call: " + swTableAnnotation.get_ColumnHidden(0));
swTableAnnotation.set_ColumnHidden(0, true);
Debug.Print("
TAG column hidden after API call: " + swTableAnnotation.get_ColumnHidden(0));
}
}
public
SldWorks swApp;
}
}