# Change Color Using Color Picker Example (VB.NET)

This example shows how to change the Color of a Line using the color picker.

    '--------------------------------------------------------------
    ' Preconditions:
    ' 1. Create a VB.NET Windows console project.
    ' 2. Copy and paste this code into the VB.NET project.
    ' 3. Add a reference to
    '    install_dir\APISDK\tlb\DraftSight.Interop.dsAutomation.dll.
    ' 4. Add a reference to System.Windows.Forms.
    ' 5. Start DraftSight.
    ' 6. Press F5.
    '
    ' Postconditions:
    ' 1. Gets the active document.
    ' 2. Constructs a Line.
    ' 3. Gets the Color of the Line.
    ' 4. Opens the color picker.
    ' 5. Select a Color in the color picker and click OK.
    ' 6. Sets the Color of the Line to the Color that you selected
    '    in the color picker.
    '----------------------------------------------------------------

    Imports System
    Imports DraftSight.Interop.dsAutomation
    Imports System.Runtime.InteropServices
    Imports System.Windows.Forms

    Module Module1

        Sub Main()
            Dim dsApp As DraftSight.Interop.dsAutomation.Application
            Dim dsDoc As Document = Nothing
            Dim dsColorPicker As ColorPicker = Nothing
            Dim dsSketchMgr As SketchManager = Nothing
            Dim dsLine As Line = Nothing
            Dim dsColor As Color = Nothing
            Dim OnlyColorBoxIndex As Boolean = True
            Dim EnableByBlockAndLayer As Boolean = True

            'Connects to DraftSight
            dsApp = GetObject(, "DraftSight.Application")

            'Aborts any command currently running in DraftSight to avoid nested commands
            dsApp.AbortRunningCommand()

            'Gets active document
            dsDoc = dsApp.GetActiveDocument()

            'Gets the Sketch Manager
            dsSketchMgr = dsDoc.GetModel().GetSketchManager()

            'Constructs a Line
            Dim StartX As Double = 0, StartY As Double = 0, StartZ As Double = 0
            Dim EndX As Double = 23.6, EndY As Double = 12.545, EndZ As Double = 0
            dsLine = dsSketchMgr.InsertLine(StartX, StartY, StartZ, EndX, EndY, EndZ)

            'Gets Color of Line
            dsColor = dsLine.Color

            'Creates an instance of the color picker
            dsColorPicker = dsApp.CreateColorPicker(OnlyColorBoxIndex, EnableByBlockAndLayer)

            'Sets Color to the color picker
            dsColorPicker.SetColor(dsColor)

            'Opens the color picker
            dsColorPicker.Execute()

            'Select a Color in the color picker
            'Click OK

            'Gets Color from  color picker
            dsColor = dsColorPicker.GetColor()

            'Sets Color of the Line to Color selected in color picker
            dsLine.Color = dsColor

        End Sub

    End Module