Imports System.IO
Imports System.Runtime.InteropServices
Module Example
    <STAThread()> _
    Sub Main()
        Dim objApplication As SolidEdgeFramework.Application = Nothing
        Dim objPartDocument As SolidEdgePart.PartDocument = Nothing
        Dim objFamilyMembers As SolidEdgePart.FamilyMembers = Nothing
        Dim objFamilyMember As SolidEdgePart.FamilyMember = Nothing
        Try
            OleMessageFilter.Register()
            ' Start Solid Edge
            objApplication = Marshal.GetActiveObject("SolidEdge.Application")
            objApplication.Visible = True
            objPartDocument = objApplication.ActiveDocument
            objFamilyMembers = objPartDocument.FamilyMembers
            ' Loop through all family members
            For Each objFamilyMember In objFamilyMembers
                ' Determine current FamilyMember's MovePrecedence
                Select Case objFamilyMember.MovePrecedence
                    Case SolidEdgePart.MovePrecedenceConstants.igModelMovePredecence
                        ' MovePrecedence is set to igModelMovePredecence
                    Case SolidEdgePart.MovePrecedenceConstants.igSelectSetMovePrecedence
                        ' MovePrecedence is set to igSelectSetMovePrecedence
                End Select
                ' Demonstrate setting all family members MovePrecedence to igModelMovePredecence
                objFamilyMember.MovePrecedence = SolidEdgePart.MovePrecedenceConstants.igModelMovePredecence
            Next
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        Finally
            OleMessageFilter.Revoke()
        End Try
    End Sub
End Module