Solid Edge Framework Type Library
ActiveDocumentType Property
Solid Edge Framework Type Library > Application Object : ActiveDocumentType Property
Description
Returns the type of the currently active document.
Property type
Read-only property
Syntax
Visual Basic
Public Property ActiveDocumentType As DocumentTypeConstants
Remarks
If no document is open in the application, accessing this property generates a run-time error.
Example
Option Infer On

Imports System
Imports System.Runtime.InteropServices

Namespace Examples
    Friend Class Program
        <STAThread>
        Shared Sub Main(ByVal args() As String)
            Dim application As SolidEdgeFramework.Application = Nothing

            Try
                ' See "Handling 'Application is Busy' and 'Call was Rejected By Callee' errors" topic.
                OleMessageFilter.Register()

                ' Attempt to connect to a running instance of Solid Edge.
                application = DirectCast(Marshal.GetActiveObject("SolidEdge.Application"), SolidEdgeFramework.Application)

                ' ActiveDocumentType will throw an exception if no document is open.
                Select Case application.ActiveDocumentType
                    Case SolidEdgeFramework.DocumentTypeConstants.igAssemblyDocument
                        Dim assemblyDocument = CType(application.ActiveDocument, SolidEdgeAssembly.AssemblyDocument)
                    Case SolidEdgeFramework.DocumentTypeConstants.igDraftDocument
                        Dim draftDocument = CType(application.ActiveDocument, SolidEdgeDraft.DraftDocument)
                    Case SolidEdgeFramework.DocumentTypeConstants.igPartDocument
                        Dim partDocument = CType(application.ActiveDocument, SolidEdgePart.PartDocument)
                    Case SolidEdgeFramework.DocumentTypeConstants.igSheetMetalDocument
                        Dim sheetMetalDocument = CType(application.ActiveDocument, SolidEdgePart.SheetMetalDocument)
                    Case SolidEdgeFramework.DocumentTypeConstants.igWeldmentAssemblyDocument
                        Dim weldmentAssemblyDocument = CType(application.ActiveDocument, SolidEdgeAssembly.AssemblyDocument)
                    Case SolidEdgeFramework.DocumentTypeConstants.igWeldmentDocument
                        Dim weldmentDocument = CType(application.ActiveDocument, SolidEdgePart.WeldmentDocument)
                End Select
            Catch ex As System.Exception
                Console.WriteLine(ex)
            Finally
                OleMessageFilter.Unregister()
            End Try
        End Sub
    End Class
End Namespace
using System;
using System.Runtime.InteropServices;

namespace Examples
{
    class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
            SolidEdgeFramework.Application application = null;

            try
            {
                // See "Handling 'Application is Busy' and 'Call was Rejected By Callee' errors" topic.
                OleMessageFilter.Register();

                // Attempt to connect to a running instance of Solid Edge.
                application = (SolidEdgeFramework.Application)Marshal.GetActiveObject("SolidEdge.Application");

                // ActiveDocumentType will throw an exception if no document is open.
                switch (application.ActiveDocumentType)
                {
                    case SolidEdgeFramework.DocumentTypeConstants.igAssemblyDocument:
                        var assemblyDocument = (SolidEdgeAssembly.AssemblyDocument)application.ActiveDocument;
                        break;
                    case SolidEdgeFramework.DocumentTypeConstants.igDraftDocument:
                        var draftDocument = (SolidEdgeDraft.DraftDocument)application.ActiveDocument;
                        break;
                    case SolidEdgeFramework.DocumentTypeConstants.igPartDocument:
                        var partDocument = (SolidEdgePart.PartDocument)application.ActiveDocument;
                        break;
                    case SolidEdgeFramework.DocumentTypeConstants.igSheetMetalDocument:
                        var sheetMetalDocument = (SolidEdgePart.SheetMetalDocument)application.ActiveDocument;
                        break;
                    case SolidEdgeFramework.DocumentTypeConstants.igWeldmentAssemblyDocument:
                        var weldmentAssemblyDocument = (SolidEdgeAssembly.AssemblyDocument)application.ActiveDocument;
                        break;
                    case SolidEdgeFramework.DocumentTypeConstants.igWeldmentDocument:
                        var weldmentDocument = (SolidEdgePart.WeldmentDocument)application.ActiveDocument;
                        break;
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex);
            }
            finally
            {
                OleMessageFilter.Unregister();
            }
        }
    }
}
See Also

Application Object  | Application Members