LookupGrid: Add SelectedValuesChanged event

This commit is contained in:
Jonathan Jenne
2019-06-11 10:33:38 +02:00
parent 9b17c1fbcb
commit f50c795362
2 changed files with 22 additions and 2 deletions

View File

@@ -13,6 +13,9 @@ Imports DevExpress.XtraEditors.Controls
Public Class LookupControl2
Inherits GridLookUpEdit
Public Delegate Sub SelectedValuesChangedHandler(sender As Object, SelectedValues As List(Of String))
Public Event SelectedValuesChanged As SelectedValuesChangedHandler
Public Property MultiSelect As Boolean
Public Property AllowAddNewValues As Boolean
Public Property PreventDuplicates As Boolean
@@ -132,6 +135,12 @@ Public Class LookupControl2
Values.RemoveAll(Function(v) String.IsNullOrEmpty(v))
' Update selected values before changing edit value
' in case EditValueChanged event is used to detect changes
_SelectedValues = Values
RaiseEvent SelectedValuesChanged(Me, Values)
If MultiSelect = True Then
Properties.DataSource = Values
@@ -148,8 +157,6 @@ Public Class LookupControl2
Text = Values.FirstOrDefault()
EditValue = Nothing
End If
_SelectedValues = Values
End Sub
Private Function GetLookupForm() As frmLookupGrid

View File

@@ -16,8 +16,21 @@
LookupControl22.DataSource = oDatatable
LookupControl22.SelectedValues = oSelectedValues
LookupControl22.ReadOnly = False
LookupControl22.MultiSelect = False
LookupControl22.SelectedValues = New List(Of String) From {"", Nothing, "LOL"}
AddHandler LookupControl.SelectedValuesChanged, Sub(_sender As Object, SelectedValues As List(Of String))
MsgBox("Selected Values: " & String.Join(",", SelectedValues.ToArray))
End Sub
AddHandler LookupControl21.SelectedValuesChanged, Sub(_sender As Object, SelectedValues As List(Of String))
MsgBox("Selected Values: " & String.Join(",", SelectedValues.ToArray))
End Sub
AddHandler LookupControl22.SelectedValuesChanged, Sub(_sender As Object, SelectedValues As List(Of String))
MsgBox("Selected Values: " & String.Join(",", SelectedValues.ToArray))
End Sub
End Sub
Private Function GetDatatable() As DataTable