LookupGrid: Make checkbox column unfocusable, remove faulty focusedrowchanged event logic

This commit is contained in:
Jonathan Jenne 2022-02-17 11:57:27 +01:00
parent e14c5fd8e2
commit 653dce740d

View File

@ -57,9 +57,12 @@ Public Class frmLookupGrid
If MultiSelect Then If MultiSelect Then
' Selected Spalte anpassen ' Selected Spalte anpassen
Dim oCheckboxColumn = _View.Columns.Item(0) Dim oCheckboxColumn = _View.Columns.Item(0)
'oCheckboxColumn.Visible = False
oCheckboxColumn.Caption = " " oCheckboxColumn.Caption = " "
oCheckboxColumn.MaxWidth = 30 oCheckboxColumn.MaxWidth = 30
oCheckboxColumn.MinWidth = 30 oCheckboxColumn.MinWidth = 30
oCheckboxColumn.OptionsColumn.AllowFocus = False
Text = _R.GetString("PopupForm_Text") Text = _R.GetString("PopupForm_Text")
_DataColumn = 1 _DataColumn = 1
@ -191,6 +194,7 @@ Public Class frmLookupGrid
Private Sub HandleCustomKeys(e As KeyEventArgs) Private Sub HandleCustomKeys(e As KeyEventArgs)
If e.KeyCode = Keys.Escape Then If e.KeyCode = Keys.Escape Then
Close() Close()
ElseIf e.KeyCode = Keys.F2 Then ElseIf e.KeyCode = Keys.F2 Then
' Make sure the currently focused row's state is saved ' Make sure the currently focused row's state is saved
viewLookup.PostEditor() viewLookup.PostEditor()
@ -201,15 +205,6 @@ Public Class frmLookupGrid
End If End If
End Sub End Sub
Private Sub viewLookup_CellValueChanging(sender As Object, e As Views.Base.CellValueChangedEventArgs) Handles viewLookup.CellValueChanging
If e.RowHandle = GridControl.NewItemRowHandle Then
Exit Sub
End If
Dim rowHandle = e.RowHandle
Dim column = e.Column
End Sub
Private Sub viewLookup_ShowingEditor(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles viewLookup.ShowingEditor Private Sub viewLookup_ShowingEditor(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles viewLookup.ShowingEditor
Dim rowHandleIsNewItemRow = (_View.FocusedRowHandle = GridControl.NewItemRowHandle) Dim rowHandleIsNewItemRow = (_View.FocusedRowHandle = GridControl.NewItemRowHandle)
Dim columnIsCheckboxColumn = (_View.FocusedColumn.FieldName = COLUMN_SELECTED) Dim columnIsCheckboxColumn = (_View.FocusedColumn.FieldName = COLUMN_SELECTED)
@ -262,9 +257,12 @@ Public Class frmLookupGrid
End If End If
End Sub End Sub
Private Sub viewLookup_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles viewLookup.FocusedRowChanged Private Sub viewLookup_FocusedRowChanged(sender As Object, e As FocusedRowChangedEventArgs) Handles viewLookup.FocusedRowChanged
If AddNewValues AndAlso e.PrevFocusedRowHandle = GridControl.NewItemRowHandle Then ' Removed because it leads to some weird behaviour where you a locked in the new row forever
BeginInvoke(Sub() viewLookup.FocusedRowHandle = GridControl.NewItemRowHandle) 'If AddNewValues AndAlso e.PrevFocusedRowHandle = GridControl.NewItemRowHandle Then
End If ' BeginInvoke(Sub() viewLookup.FocusedRowHandle = GridControl.NewItemRowHandle)
'End If
End Sub End Sub
End Class End Class