Hide Table of Contents

Get Comments in Comments Folder Example (C#)

This example shows how to add and get the comments in a Comments folder.

//------------------------------
// Preconditions:
// 1. Specified model document to open exits.
// 2. Open Immediate window.
// 3. Run macro.
//
// Postconditions:
// 1. Examine the FeatureManager design tree
//    to verify that the Comments folder is not
//    shown. Press F5.
// 2. Adds a comment to the Comments folder
//    and updates the FeatureManager design
//    tree.
// 3. Examine the FeatureManager design tree
//    to verify that the Comments folder is
//    shown. Press F5.
// 4. Prints the number of comments, name of the
//    the comments, and text of the comments
//    in the Comments folder to the Immediate
//    window.
//
// NOTE: Because this model document is used
// elsewhere, do not save any changes when
// closing it.
//-------------------------------
 
using SolidWorks.Interop.sldworks;
using SolidWorks.Interop.swconst;
using System.Runtime.InteropServices;
using System;
using System.Diagnostics;
 
namespace UpdateFeatureTreeCSharp.csproj
{
    public partial class SolidWorksMacro
    {
 
 
        public void Main()
        {
            {
                ModelDoc2 swModelDoc = default(ModelDoc2);
                Feature swFeat = default(Feature);
                FeatureManager swFeatMgr = default(FeatureManager);
                CommentFolder swCommentFolder = default(CommentFolder);
                Comment swComment = default(Comment);
                int nbrComments = 0;
                string sFeatType = null;
                object[] vComments = null;
                string fileName = null;
                int errors = 0;
                int warnings = 0;
                long i = 0;
 
 
                // Open part document
                fileName = "C:\\Program Files\\SolidWorks Corp\\SolidWorks\\samples\\design portfolio\\sheet_metal_bracket.sldprt";
                swModelDoc = (ModelDoc2)swApp.OpenDoc6(fileName, (int)swDocumentTypes_e.swDocPART, (int)swOpenDocOptions_e.swOpenDocOptions_Silent, ""ref errors, ref warnings);
 
                // Traverse the FeatureManager design tree for Comments folder
 
                // Get first feature in FeatureManager design tree
                swFeat = (Feature)swModelDoc.FirstFeature();
                swFeatMgr = (FeatureManager)swModelDoc.FeatureManager;
 
                System.Diagnostics.Debugger.Break();
                // Examine FeatureManager design tree to verify that
                // the the Comments folder is not shown; press F5
 
                while ((swFeat != null))
                {
                    sFeatType = swFeat.GetTypeName();
 
                    // If Comments folder, add a comment
                    if (sFeatType == "CommentsFolder")
                    {
                        swCommentFolder = (CommentFolder)swFeat.GetSpecificFeature2();
 
                        // Add comment and update FeatureManager design tree
                        // so that Comments folder is shown
                        swComment = (Comment)swCommentFolder.AddComment("First comment in comment folder.");
                        swFeatMgr.UpdateFeatureTree();
 
                        System.Diagnostics.Debugger.Break();
                        // Locate Comments folder in FeatureManager design; press F5
 
                        // Get number of comments in Comment folder
                        nbrComments = swCommentFolder.GetCommentCount();
                        Debug.Print("Number of comments in Comments folder         = " + nbrComments);
 
                        vComments = (object[])swCommentFolder.GetComments();
                        for (i = 0; i <= (nbrComments - 1); i++)
                        {
                            swComment = (Comment)vComments[i];
                            Debug.Print("Name of comment in FeatureManager design tree = " + swComment.Name);
                            Debug.Print("Text of comment                               = " + swComment.Text);
                            Debug.Print("");
                        }
                    }
 
                    // Get next feature in FeatureManager design tree
                    swFeat = (Feature)swFeat.GetNextFeature();
 
                }
            }
        }
 
 
        /// <summary>
        ///  The SldWorks swApp variable is pre-assigned for you.
        /// </summary>
        public SldWorks swApp;
    }
}


Provide feedback on this topic

SOLIDWORKS welcomes your feedback concerning the presentation, accuracy, and thoroughness of the documentation. Use the form below to send your comments and suggestions about this topic directly to our documentation team. The documentation team cannot answer technical support questions. Click here for information about technical support.

* Required

 
*Email:  
Subject:   Feedback on Help Topics
Page:   Get Comments in Comments Folder Example (C#)
*Comment:  
*   I acknowledge I have read and I hereby accept the privacy policy under which my Personal Data will be used by Dassault Systèmes

Print Topic

Select the scope of content to print:



x

We have detected you are using a browser version older than Internet Explorer 7. For optimized display, we suggest upgrading your browser to Internet Explorer 7 or newer.

 Never show this message again
x

Web Help Content Version: API Help (English only) 2013 SP05

To disable Web help from within SOLIDWORKS and use local help instead, click Help > Use SOLIDWORKS Web Help.

To report problems encountered with the Web help interface and search, contact your local support representative. To provide feedback on individual help topics, use the “Feedback on this topic” link on the individual topic page.