Hi i want to know this exact close and release stuff for Pick Objects. Like we are using modeless form in execute of external command as following:
In Function Execute
-------------------------------------------
Using newform1 As New rfrm1(rdoc, rdocui, rdset, reles, reids)
newform1.Show(_hWndRevit)
newform1.formContinue = True
While newform1.formContinue
Dim sel As Selection = rdocui.Selection
Dim pickedRefs As New List(Of Reference)
Try
pickedRefs = sel.PickObjects(ObjectType.Element, New WallPickFilter(), _prompt)
Catch generatedExceptionName As Autodesk.Revit.Exceptions.OperationCanceledException
End Try
If (Not pickedRefs Is Nothing And pickedRefs.Any()) Then
reles.Clear()
reids.Clear()
For Each pickedRef As Reference In pickedRefs
Dim elem As Element = rdoc.GetElement(pickedRef)
If TypeOf (elem) Is Rvt.Wall Then
Dim rname As String = elem.Name
reles.Add(rname)
reids.Add(elem.Id)
End If
Next
newform1.fillSelected(reles, reids)
End If
End While
End Using
Return Autodesk.Revit.UI.Result.Succeeded
-----------------------------------------------------------------------
And i want to close this pick objects in this close/Closing event of form
Private Sub btn2_Click(sender As Object, e As EventArgs) Handles btn2.Click
formContinue = False
Me.Close()
'Dim _hWndRevit As WindowHandle = Nothing
'Dim ptr As IntPtr
'Dim processes As Process() = Process.GetProcessesByName("Revit")
'If 0 < processes.Length Then
' ptr = processes(0).MainWindowHandle
' _hWndRevit = New WindowHandle(ptr)
'End If
'SetForegroundWindow(ptr)
'SendKeys.SendWait("{ESC}")
'Press.Keys("{ESC}")
End Sub