Replace LookupGrid2 with Version 3

This commit is contained in:
Jonathan Jenne 2021-02-18 16:33:07 +01:00
parent 903e5e5c81
commit 7d054fa053
5 changed files with 109 additions and 98 deletions

View File

@ -192,8 +192,8 @@ Public Class ClassControlCreator
Return control Return control
End Function End Function
Friend Shared Function CreateNewLookupControl(location As Point) As LookupControl2 Friend Shared Function CreateNewLookupControl(location As Point) As LookupControl3
Dim control As New LookupControl2 With { Dim control As New LookupControl3 With {
.Name = $"{PREFIX_LOOKUP}_{clsTools.ShortGuid}", .Name = $"{PREFIX_LOOKUP}_{clsTools.ShortGuid}",
.Size = New Size(DEFAULT_WIDTH, DEFAULT_HEIGHT), .Size = New Size(DEFAULT_WIDTH, DEFAULT_HEIGHT),
.Cursor = Cursors.Hand, .Cursor = Cursors.Hand,
@ -391,8 +391,9 @@ Public Class ClassControlCreator
Return control Return control
End Function End Function
Public Shared Function CreateExistingLookupControl(row As DataRow, designMode As Boolean) As LookupControl2 Public Shared Function CreateExistingLookupControl(row As DataRow, designMode As Boolean) As LookupControl3
Dim control As LookupControl2 = CreateBaseControl(New LookupControl2(), row, designMode) Dim control As LookupControl3 = CreateBaseControl(New LookupControl3(), row, designMode)
control.Properties.Name = control.Name
control.Width = row.Item("WIDTH") control.Width = row.Item("WIDTH")
control.ReadOnly = row.Item("READ_ONLY") control.ReadOnly = row.Item("READ_ONLY")

View File

@ -172,10 +172,10 @@ Public Class clsPatterns
Select Case oControl.GetType.ToString Select Case oControl.GetType.ToString
Case GetType(TextBox).ToString Case GetType(TextBox).ToString
oReplaceValue = oControl.Text oReplaceValue = oControl.Text
Case GetType(LookupControl2).ToString Case GetType(LookupControl3).ToString
Dim oLookupControl2 As LookupControl2 = oControl Dim oLookupControl3 As LookupControl3 = oControl
If oLookupControl2.SelectedValues.Count = 1 Then If oLookupControl3.Properties.SelectedValues.Count = 1 Then
oReplaceValue = oLookupControl2.SelectedValues.Item(0) oReplaceValue = oLookupControl3.Properties.SelectedValues.Item(0)
Else Else
oReplaceValue = "0" oReplaceValue = "0"
End If End If

View File

@ -429,7 +429,7 @@ Public Class frmFormDesigner
' pnldesigner.Controls.Add(chk) ' pnldesigner.Controls.Add(chk)
' Case ClassControlCreator.PREFIX_DATAGRIDVIEW ' Case ClassControlCreator.PREFIX_DATAGRIDVIEW
' Dim lc As LookupControl2 = ClassControlCreator.CreateNewLookupControl(cursorPosition) ' Dim lc As LookupControl3 = ClassControlCreator.CreateNewLookupControl(cursorPosition)
' SetMovementHandlers(lc) ' SetMovementHandlers(lc)
@ -540,7 +540,7 @@ Public Class frmFormDesigner
oControl.BackColor = Color.Transparent oControl.BackColor = Color.Transparent
Case "DD_ProcessManager.ClassControlCreator+LineLabel" Case "DD_ProcessManager.ClassControlCreator+LineLabel"
oControl.BackColor = oControl.ForeColor oControl.BackColor = oControl.ForeColor
Case "DigitalData.Controls.LookupGrid.LookupControl2" Case "DigitalData.Controls.LookupGrid.LookupControl3"
oControl.BackColor = Color.White oControl.BackColor = Color.White
Case "System.Windows.Forms.Button" Case "System.Windows.Forms.Button"
oControl.BackColor = SystemColors.Control oControl.BackColor = SystemColors.Control
@ -875,8 +875,8 @@ Public Class frmFormDesigner
props = gridProps props = gridProps
ElseIf TypeOf sender Is LookupControl2 Then ElseIf TypeOf sender Is LookupControl3 Then
Dim grid As LookupControl2 = sender Dim grid As LookupControl3 = sender
Dim lookupProps As LookupControlProperties = CreatePropsObjectWithIndicies(New LookupControlProperties, oRow, Source_AllIndicies) Dim lookupProps As LookupControlProperties = CreatePropsObjectWithIndicies(New LookupControlProperties, oRow, Source_AllIndicies)
lookupProps.MultiSelect = StrToBool(oRow.Item("MULTISELECT")) lookupProps.MultiSelect = StrToBool(oRow.Item("MULTISELECT"))
lookupProps.PreventDuplicates = StrToBool(oRow.Item("VKT_PREVENT_MULTIPLE_VALUES")) lookupProps.PreventDuplicates = StrToBool(oRow.Item("VKT_PREVENT_MULTIPLE_VALUES"))
@ -1320,7 +1320,7 @@ Public Class frmFormDesigner
pnldesigner.Controls.Add(chk) pnldesigner.Controls.Add(chk)
Case ClassControlCreator.PREFIX_LOOKUP Case ClassControlCreator.PREFIX_LOOKUP
Dim lc As LookupControl2 = ClassControlCreator.CreateNewLookupControl(cursorPosition) Dim lc As LookupControl3 = ClassControlCreator.CreateNewLookupControl(cursorPosition)
SetMovementHandlers(lc) SetMovementHandlers(lc)

View File

@ -331,14 +331,14 @@ Public Class frmMassValidator
Dim lookupReadonly = ClassControlCreator.CreateExistingTextbox(oControlRow, False) Dim lookupReadonly = ClassControlCreator.CreateExistingTextbox(oControlRow, False)
oControl = lookupReadonly oControl = lookupReadonly
Else Else
Dim lookup As LookupControl2 = ClassControlCreator.CreateExistingLookupControl(oControlRow, False) Dim lookup As LookupControl3 = ClassControlCreator.CreateExistingLookupControl(oControlRow, False)
lookup.PreventDuplicates = oControlRow.Item("VKT_PREVENT_MULTIPLE_VALUES") lookup.Properties.PreventDuplicates = oControlRow.Item("VKT_PREVENT_MULTIPLE_VALUES")
lookup.AllowAddNewValues = oControlRow.Item("VKT_ADD_ITEM") lookup.Properties.AllowAddNewValues = oControlRow.Item("VKT_ADD_ITEM")
lookup.MultiSelect = oMultiselect lookup.Properties.MultiSelect = oMultiselect
If NotNull(oControlRow.Item("DEFAULT_VALUE"), "") <> "" Then If NotNull(oControlRow.Item("DEFAULT_VALUE"), "") <> "" Then
lookup.SelectedValues = New List(Of String) From {oControlRow.Item("DEFAULT_VALUE")} lookup.Properties.SelectedValues = New List(Of String) From {oControlRow.Item("DEFAULT_VALUE")}
End If End If
oControl = lookup oControl = lookup
@ -349,7 +349,7 @@ Public Class frmMassValidator
DTCONTROLS.Select(oExpression).CopyToDataTable(filteredData, LoadOption.PreserveChanges) DTCONTROLS.Select(oExpression).CopyToDataTable(filteredData, LoadOption.PreserveChanges)
If filteredData.Rows.Count = 1 Then If filteredData.Rows.Count = 1 Then
'AddHandler lookup.EditValueChanged, AddressOf onLookUp1 'AddHandler lookup.EditValueChanged, AddressOf onLookUp1
AddHandler lookup.SelectedValuesChanged, AddressOf onLookUp1 AddHandler lookup.Properties.SelectedValuesChanged, AddressOf onLookUp1
End If End If
End If End If
@ -395,7 +395,7 @@ Public Class frmMassValidator
If FORM_Shown = False Then If FORM_Shown = False Then
Exit Sub Exit Sub
End If End If
Dim oLookup As LookupControl2 = sender Dim oLookup As LookupControl3 = sender
Try Try
If Not IsNothing(SelectedValues) Then If Not IsNothing(SelectedValues) Then
If SelectedValues.Count = 1 Then If SelectedValues.Count = 1 Then
@ -419,11 +419,11 @@ Public Class frmMassValidator
_dependingControl_in_action = True _dependingControl_in_action = True
Dim oDTDEPENDING_RESULT As DataTable = ClassDatabase.Return_Datatable(oSqlCommand, "MV_OnLookUp1") Dim oDTDEPENDING_RESULT As DataTable = ClassDatabase.Return_Datatable(oSqlCommand, "MV_OnLookUp1")
Try Try
Dim oDependingLookup As LookupControl2 = pnldesigner.Controls.Find(oDEPENDING_CtrlName, False).FirstOrDefault() Dim oDependingLookup As LookupControl3 = pnldesigner.Controls.Find(oDEPENDING_CtrlName, False).FirstOrDefault()
For Each oControl As Control In pnldesigner.Controls For Each oControl As Control In pnldesigner.Controls
If DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Guid = oDEPENDING_GUID Then If DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Guid = oDEPENDING_GUID Then
Dim oDependingLookup1 As LookupControl2 = oControl Dim oDependingLookup1 As LookupControl3 = oControl
oDependingLookup1.DataSource = oDTDEPENDING_RESULT oDependingLookup1.Properties.DataSource = oDTDEPENDING_RESULT
_dependingControl_in_action = False _dependingControl_in_action = False
Exit For Exit For
End If End If
@ -678,9 +678,9 @@ Public Class frmMassValidator
MsgBox("Achtung fehlerhafte Konfiguration:" & vbNewLine & "Für das Control " & oControl.Name & " wurde KEIN INDEX hinterlegt!" & vbNewLine & "Bitte prüfen Sie den Formulardesigner!", MsgBoxStyle.Critical) MsgBox("Achtung fehlerhafte Konfiguration:" & vbNewLine & "Für das Control " & oControl.Name & " wurde KEIN INDEX hinterlegt!" & vbNewLine & "Bitte prüfen Sie den Formulardesigner!", MsgBoxStyle.Critical)
Exit For Exit For
End If End If
Case "DigitalData.Controls.LookupGrid.LookupControl2" Case "DigitalData.Controls.LookupGrid.LookupControl3"
Try Try
Dim oLookup As LookupControl2 = oControl Dim oLookup As LookupControl3 = oControl
Dim oWindreamValue = GetWM_Value_Multiple_Docs(idxname) Dim oWindreamValue = GetWM_Value_Multiple_Docs(idxname)
If Not IsNothing(oWindreamValue) Then If Not IsNothing(oWindreamValue) Then
@ -690,20 +690,20 @@ Public Class frmMassValidator
oArrlist.Add(oVectorRow.ToString) oArrlist.Add(oVectorRow.ToString)
Next Next
oLookup.SelectedValues = oArrlist oLookup.Properties.SelectedValues = oArrlist
Else Else
Dim oArrlist As New List(Of String) Dim oArrlist As New List(Of String)
oArrlist.Add(oWindreamValue.ToString) oArrlist.Add(oWindreamValue.ToString)
oLookup.SelectedValues = oArrlist oLookup.Properties.SelectedValues = oArrlist
'_CURRENT_INDEX_ARRAY(oCount, 1) = oWindreamValue.ToString '_CURRENT_INDEX_ARRAY(oCount, 1) = oWindreamValue.ToString
End If End If
Else Else
If Not IsNothing(oLookup.SelectedValues) Then If Not IsNothing(oLookup.Properties.SelectedValues) Then
If oLookup.SelectedValues.Count = 0 And defaultValue <> String.Empty Then If oLookup.Properties.SelectedValues.Count = 0 And defaultValue <> String.Empty Then
Dim oValues As List(Of String) = defaultValue.Split(",").ToList() Dim oValues As List(Of String) = defaultValue.Split(",").ToList()
oLookup.SelectedValues = oValues oLookup.Properties.SelectedValues = oValues
End If End If
End If End If
End If End If
@ -712,7 +712,7 @@ Public Class frmMassValidator
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
LOGGER.Info(" - Unvorhergesehener Unexpected error in AddLookupGrid - Indexname: " & idxname & " - Fehler: " & vbNewLine & ex.Message) LOGGER.Info(" - Unvorhergesehener Unexpected error in AddLookupGrid - Indexname: " & idxname & " - Fehler: " & vbNewLine & ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unvorhergesehener Unexpected error in Add LookupControl2:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unvorhergesehener Unexpected error in Add LookupControl3:")
End Try End Try
End Select End Select
Next Next
@ -1081,14 +1081,14 @@ Public Class frmMassValidator
LOGGER.Error(ex) LOGGER.Error(ex)
clsLogger.Add("Error in LoadSimpleData for Combobox: " & ex.Message) clsLogger.Add("Error in LoadSimpleData for Combobox: " & ex.Message)
End Try End Try
ElseIf TypeOf control Is LookupControl2 Then ElseIf TypeOf control Is LookupControl3 Then
Try Try
Dim lookup As LookupControl2 = control Dim lookup As LookupControl3 = control
lookup.DataSource = dt lookup.Properties.DataSource = dt
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
clsLogger.Add("Error in LoadSimpleData for LookupControl2: " & ex.Message) clsLogger.Add("Error in LoadSimpleData for LookupControl3: " & ex.Message)
End Try End Try
'ElseIf TypeOf control Is GridControl Then 'ElseIf TypeOf control Is GridControl Then
' Try ' Try
@ -1394,26 +1394,26 @@ Public Class frmMassValidator
End If End If
Dim Type As String = oControl.GetType.ToString Dim Type As String = oControl.GetType.ToString
Select Case Type Select Case Type
Case "DigitalData.Controls.LookupGrid.LookupControl2" Case "DigitalData.Controls.LookupGrid.LookupControl3"
Try Try
Dim myLookup As LookupControl2 = oControl Dim myLookup As LookupControl3 = oControl
'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss 'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
If myLookup.SelectedValues.Count = 0 And _MUSSEINGABE = True Then If myLookup.Properties.SelectedValues.Count = 0 And _MUSSEINGABE = True Then
oMissing = True oMissing = True
oErrorMessage = $"No selection in LookUpGrid '{oControl.Name}'" oErrorMessage = $"No selection in LookUpGrid '{oControl.Name}'"
oControl.BackColor = Color.Red oControl.BackColor = Color.Red
Exit For Exit For
End If End If
If myLookup.MultiSelect = True Then If myLookup.Properties.MultiSelect = True Then
Dim Zeilen As Integer = myLookup.SelectedValues.Count Dim Zeilen As Integer = myLookup.Properties.SelectedValues.Count
'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss 'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
If Zeilen > 0 Then If Zeilen > 0 Then
Dim ZeilenGrid As Integer = 0 Dim ZeilenGrid As Integer = 0
Dim myVektorArr As String() Dim myVektorArr As String()
'Jeden Werte des Datagridviews durchlaufen 'Jeden Werte des Datagridviews durchlaufen
For Each value As String In myLookup.SelectedValues For Each value As String In myLookup.Properties.SelectedValues
If value Is Nothing = False Then If value Is Nothing = False Then
'Das Array anpassen 'Das Array anpassen
ReDim Preserve myVektorArr(ZeilenGrid) ReDim Preserve myVektorArr(ZeilenGrid)
@ -1437,7 +1437,7 @@ Public Class frmMassValidator
End If End If
End If End If
Else Else
oMyControlInput = myLookup.SelectedValues.FirstOrDefault() oMyControlInput = myLookup.Properties.SelectedValues.FirstOrDefault()
If IsNothing(oMyControlInput) Then If IsNothing(oMyControlInput) Then
Continue For Continue For
End If End If

View File

@ -641,11 +641,13 @@ Public Class frmValidator
Catch ex As Exception Catch ex As Exception
LOGGER.Warn("Error in ComboBoxLoadSQLData: " & ex.Message) LOGGER.Warn("Error in ComboBoxLoadSQLData: " & ex.Message)
End Try End Try
ElseIf TypeOf control Is LookupControl2 Then ElseIf TypeOf control Is LookupControl3 Then
Try Try
Dim lookup As LookupControl2 = control Dim lookup As LookupControl3 = control
lookup.DataSource = oDTContent lookup.Properties.DataSource = oDTContent
lookup.Properties.ValueMember = oDTContent.Columns.Item(0).ColumnName
lookup.Properties.DisplayMember = oDTContent.Columns.Item(0).ColumnName
Catch ex As Exception Catch ex As Exception
LOGGER.Warn("Error in LookUpLoadSQLData: " & ex.Message) LOGGER.Warn("Error in LookUpLoadSQLData: " & ex.Message)
@ -751,14 +753,14 @@ Public Class frmValidator
' LOGGER.Error(ex) ' LOGGER.Error(ex)
' clsLogger.Add("Error in LoadSimpleData for Combobox: " & ex.Message) ' clsLogger.Add("Error in LoadSimpleData for Combobox: " & ex.Message)
' End Try ' End Try
' ElseIf TypeOf control Is LookupControl2 Then ' ElseIf TypeOf control Is LookupControl3 Then
' Try ' Try
' Dim lookup As LookupControl2 = control ' Dim lookup As LookupControl3 = control
' lookup.DataSource = oDTforControl ' lookup.DataSource = oDTforControl
' Catch ex As Exception ' Catch ex As Exception
' LOGGER.Error(ex) ' LOGGER.Error(ex)
' clsLogger.Add("Error in LoadSimpleData for LookupControl2: " & ex.Message) ' clsLogger.Add("Error in LoadSimpleData for LookupControl3: " & ex.Message)
' End Try ' End Try
' ElseIf TypeOf control Is GridControl Then ' ElseIf TypeOf control Is GridControl Then
' Try ' Try
@ -975,18 +977,18 @@ Public Class frmValidator
Dim lookupReadonly = ClassControlCreator.CreateExistingTextbox(oControlRow, False) Dim lookupReadonly = ClassControlCreator.CreateExistingTextbox(oControlRow, False)
oMyControl = lookupReadonly oMyControl = lookupReadonly
Else Else
Dim lookup As LookupControl2 = ClassControlCreator.CreateExistingLookupControl(oControlRow, False) Dim lookup As LookupControl3 = ClassControlCreator.CreateExistingLookupControl(oControlRow, False)
lookup.PreventDuplicates = oControlRow.Item("VKT_PREVENT_MULTIPLE_VALUES") lookup.Properties.PreventDuplicates = oControlRow.Item("VKT_PREVENT_MULTIPLE_VALUES")
lookup.AllowAddNewValues = oControlRow.Item("VKT_ADD_ITEM") lookup.Properties.AllowAddNewValues = oControlRow.Item("VKT_ADD_ITEM")
lookup.MultiSelect = oMultiselect lookup.Properties.MultiSelect = oMultiselect
If NotNull(oControlRow.Item("DEFAULT_VALUE"), "") <> "" Then If NotNull(oControlRow.Item("DEFAULT_VALUE"), "") <> "" Then
lookup.SelectedValues = New List(Of String) From {oControlRow.Item("DEFAULT_VALUE")} lookup.Properties.SelectedValues = New List(Of String) From {oControlRow.Item("DEFAULT_VALUE")}
End If End If
oMyControl = lookup oMyControl = lookup
AddHandler lookup.SelectedValuesChanged, AddressOf LookupListChanged AddHandler lookup.Properties.SelectedValuesChanged, AddressOf LookupListChanged
'Wenn Multiselect false dann prüfen ob abhängiges Control 'Wenn Multiselect false dann prüfen ob abhängiges Control
If CBool(oControlRow.Item("MULTISELECT")) = False Then If CBool(oControlRow.Item("MULTISELECT")) = False Then
Dim oFilteredData As DataTable = DTCONTROLS.Clone() Dim oFilteredData As DataTable = DTCONTROLS.Clone()
@ -995,7 +997,7 @@ Public Class frmValidator
If oFilteredData.Rows.Count >= 1 Then If oFilteredData.Rows.Count >= 1 Then
LOGGER.Debug($"createControlsLU - Found {oFilteredData.Rows.Count} Controls which are depending on {oMyControl.Name}") LOGGER.Debug($"createControlsLU - Found {oFilteredData.Rows.Count} Controls which are depending on {oMyControl.Name}")
'AddHandler lookup.EditValueChanged, AddressOf onLookUp1 'AddHandler lookup.EditValueChanged, AddressOf onLookUp1
AddHandler lookup.SelectedValuesChanged, AddressOf onLookUpselectedValue AddHandler lookup.Properties.SelectedValuesChanged, AddressOf onLookUpselectedValue
End If End If
oExpression = $"SQL_ENABLE like '%#CTRL#{oMyControl.Name}%'" oExpression = $"SQL_ENABLE like '%#CTRL#{oMyControl.Name}%'"
@ -1003,7 +1005,7 @@ Public Class frmValidator
If oFilteredData.Rows.Count >= 1 Then If oFilteredData.Rows.Count >= 1 Then
LOGGER.Debug($"createControlsLU - Found {oFilteredData.Rows.Count} Controls which' enable state is depending on {oMyControl.Name}") LOGGER.Debug($"createControlsLU - Found {oFilteredData.Rows.Count} Controls which' enable state is depending on {oMyControl.Name}")
'AddHandler lookup.EditValueChanged, AddressOf onLookUp1 'AddHandler lookup.EditValueChanged, AddressOf onLookUp1
AddHandler lookup.SelectedValuesChanged, AddressOf onLookUpselectedValue AddHandler lookup.Properties.SelectedValuesChanged, AddressOf onLookUpselectedValue
End If End If
@ -1012,7 +1014,7 @@ Public Class frmValidator
DTCONTROLS.Select(oExpression).CopyToDataTable(oFilteredData, LoadOption.PreserveChanges) DTCONTROLS.Select(oExpression).CopyToDataTable(oFilteredData, LoadOption.PreserveChanges)
If oFilteredData.Rows.Count = 1 Then If oFilteredData.Rows.Count = 1 Then
'AddHandler lookup.EditValueChanged, AddressOf onLookUp1 'AddHandler lookup.EditValueChanged, AddressOf onLookUp1
AddHandler lookup.SelectedValuesChanged, AddressOf onLookUpselectedValue_Control2Set AddHandler lookup.Properties.SelectedValuesChanged, AddressOf onLookUpselectedValue_Control2Set
End If End If
oFilteredData = DTCONTROLS.Clone() oFilteredData = DTCONTROLS.Clone()
@ -1499,10 +1501,10 @@ Public Class frmValidator
End Sub End Sub
Public Sub onLookUp0(sender As Object, e As System.EventArgs) Public Sub onLookUp0(sender As Object, e As System.EventArgs)
Dim oLookup As LookupControl2 = sender Dim oLookup As LookupControl3 = sender
Try Try
If Not IsNothing(oLookup.SelectedValues) Then If Not IsNothing(oLookup.Properties.SelectedValues) Then
For Each ocont In oLookup.SelectedValues For Each ocont In oLookup.Properties.SelectedValues
Dim o = ocont Dim o = ocont
Next Next
End If End If
@ -1515,7 +1517,7 @@ Public Class frmValidator
If FormLoaded = False Then If FormLoaded = False Then
Exit Sub Exit Sub
End If End If
Dim oLookup As LookupControl2 = sender Dim oLookup As LookupControl3 = sender
Try Try
If Not IsNothing(SelectedValues) Then If Not IsNothing(SelectedValues) Then
If SelectedValues.Count = 1 Then If SelectedValues.Count = 1 Then
@ -1536,7 +1538,7 @@ Public Class frmValidator
Exit Sub Exit Sub
End If End If
LOGGER.Debug("LookupListChanged") LOGGER.Debug("LookupListChanged")
Dim oLookup As LookupControl2 = sender Dim oLookup As RepositoryItemLookupControl3 = sender
Try Try
listChangedLookup.Add(oLookup.Name) listChangedLookup.Add(oLookup.Name)
Catch ex As Exception Catch ex As Exception
@ -1572,7 +1574,7 @@ Public Class frmValidator
Exit Sub Exit Sub
End If End If
LOGGER.Debug("onLookUpselectedValue_Control2Set") LOGGER.Debug("onLookUpselectedValue_Control2Set")
Dim oLookup As LookupControl2 = sender Dim oLookup As LookupControl3 = sender
Try Try
If Not IsNothing(SelectedValues) Then If Not IsNothing(SelectedValues) Then
If SelectedValues.Count = 1 Then If SelectedValues.Count = 1 Then
@ -1681,9 +1683,11 @@ Public Class frmValidator
oControl.ForeColor = Color.Black oControl.ForeColor = Color.Black
End Try End Try
Case GetType(LookupControl2).ToString Case GetType(LookupControl3).ToString
Dim oDependingLookup As LookupControl2 = oControl Dim oDependingLookup As LookupControl3 = oControl
oDependingLookup.DataSource = oDTDEPENDING_RESULT oDependingLookup.Properties.DataSource = oDTDEPENDING_RESULT
oDependingLookup.Properties.ValueMember = oDTDEPENDING_RESULT.Columns.Item(0).ColumnName
oDependingLookup.Properties.DisplayMember = oDTDEPENDING_RESULT.Columns.Item(0).ColumnName
Case GetType(GridControl).ToString Case GetType(GridControl).ToString
'ClassControlCreator.GridTables 'ClassControlCreator.GridTables
@ -1706,7 +1710,7 @@ Public Class frmValidator
LOGGER.Debug($"Error Dynamic_SetControlData: Check ConnID and SQL on NULL VALUES!") LOGGER.Debug($"Error Dynamic_SetControlData: Check ConnID and SQL on NULL VALUES!")
End If End If
End Sub End Sub
Private Sub SetControlValues(LookupControl As LookupControl2, SelectedValues As List(Of String)) Private Sub SetControlValues(LookupControl As LookupControl3, SelectedValues As List(Of String))
Dim oLOOKUPValue = SelectedValues.Item(0) Dim oLOOKUPValue = SelectedValues.Item(0)
Dim oLOOKUPName = LookupControl.Name Dim oLOOKUPName = LookupControl.Name
LOGGER.Debug($"oLOOKUPValue is [{oLOOKUPValue}]!") LOGGER.Debug($"oLOOKUPValue is [{oLOOKUPValue}]!")
@ -1769,7 +1773,7 @@ Public Class frmValidator
LOGGER.Warn("Careful: the oControl2Set contains no CONTROL_GUID") LOGGER.Warn("Careful: the oControl2Set contains no CONTROL_GUID")
Exit Sub Exit Sub
End If End If
'Dim oDependingLookup As LookupControl2 = pnldesigner.Controls.Find(oDEPENDING_CtrlName, False).FirstOrDefault() 'Dim oDependingLookup As LookupControl3 = pnldesigner.Controls.Find(oDEPENDING_CtrlName, False).FirstOrDefault()
For Each oControl As Control In pnldesigner.Controls For Each oControl As Control In pnldesigner.Controls
If DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Guid = oControl2Set Then If DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Guid = oControl2Set Then
oFound = True oFound = True
@ -1806,9 +1810,11 @@ Public Class frmValidator
oControl.ForeColor = Color.Black oControl.ForeColor = Color.Black
End Try End Try
Case GetType(LookupControl2).ToString Case GetType(LookupControl3).ToString
Dim oDependingLookup As LookupControl2 = oControl Dim oDependingLookup As LookupControl3 = oControl
oDependingLookup.DataSource = oDTDEPENDING_RESULT oDependingLookup.Properties.DataSource = oDTDEPENDING_RESULT
oDependingLookup.Properties.ValueMember = oDTDEPENDING_RESULT.Columns.Item(0).ColumnName
oDependingLookup.Properties.DisplayMember = oDTDEPENDING_RESULT.Columns.Item(0).ColumnName
Case GetType(GridControl).ToString Case GetType(GridControl).ToString
'ClassControlCreator.GridTables 'ClassControlCreator.GridTables
@ -1831,7 +1837,7 @@ Public Class frmValidator
LOGGER.Debug($"Error: Check CoNN ID and SQL on NULL VALUES!") LOGGER.Debug($"Error: Check CoNN ID and SQL on NULL VALUES!")
End If End If
End Sub End Sub
Private Sub LookupControl_DependingControls(LookupControl As LookupControl2, SelectedValues As List(Of String)) Private Sub LookupControl_DependingControls(LookupControl As LookupControl3, SelectedValues As List(Of String))
Dim oLOOKUPValue = SelectedValues.Item(0) Dim oLOOKUPValue = SelectedValues.Item(0)
Dim oLOOKUPName = LookupControl.Name Dim oLOOKUPName = LookupControl.Name
LOGGER.Debug($"oLOOKUPValue is [{oLOOKUPValue}]!") LOGGER.Debug($"oLOOKUPValue is [{oLOOKUPValue}]!")
@ -1902,9 +1908,11 @@ Public Class frmValidator
Catch ex As Exception Catch ex As Exception
btnSave.BackColor = Color.Transparent btnSave.BackColor = Color.Transparent
End Try End Try
Case GetType(LookupControl2).ToString Case GetType(LookupControl3).ToString
Dim oDependingLookup As LookupControl2 = oControl Dim oDependingLookup As LookupControl3 = oControl
oDependingLookup.DataSource = oDTDEPENDING_RESULT oDependingLookup.Properties.DataSource = oDTDEPENDING_RESULT
oDependingLookup.Properties.ValueMember = oDTDEPENDING_RESULT.Columns.Item(0).ColumnName
oDependingLookup.Properties.DisplayMember = oDTDEPENDING_RESULT.Columns.Item(0).ColumnName
Case GetType(GridControl).ToString Case GetType(GridControl).ToString
'ClassControlCreator.GridTables 'ClassControlCreator.GridTables
Case GetType(CheckBox).ToString Case GetType(CheckBox).ToString
@ -1978,7 +1986,7 @@ Public Class frmValidator
Dim oDTDEPENDING_RESULT As DataTable = ClassDatabase.Return_Datatable_ConId(oSqlCommand, oRowDependingControl.Item("CONNECTION_ID"), $"CheckBox_DependingControls - oControlID: {oControlID}") Dim oDTDEPENDING_RESULT As DataTable = ClassDatabase.Return_Datatable_ConId(oSqlCommand, oRowDependingControl.Item("CONNECTION_ID"), $"CheckBox_DependingControls - oControlID: {oControlID}")
Try Try
Dim oFound As Boolean = False Dim oFound As Boolean = False
'Dim oDependingLookup As LookupControl2 = pnldesigner.Controls.Find(oDEPENDING_CtrlName, False).FirstOrDefault() 'Dim oDependingLookup As LookupControl3 = pnldesigner.Controls.Find(oDEPENDING_CtrlName, False).FirstOrDefault()
For Each oControl As Control In pnldesigner.Controls For Each oControl As Control In pnldesigner.Controls
If DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Guid = oDEPENDING_GUID Then If DirectCast(oControl.Tag, ClassControlCreator.ControlMetadata).Guid = oDEPENDING_GUID Then
oFound = True oFound = True
@ -2019,9 +2027,11 @@ Public Class frmValidator
Catch ex As Exception Catch ex As Exception
btnSave.BackColor = Color.Transparent btnSave.BackColor = Color.Transparent
End Try End Try
Case GetType(LookupControl2).ToString Case GetType(LookupControl3).ToString
Dim oDependingLookup As LookupControl2 = oControl Dim oDependingLookup As LookupControl3 = oControl
oDependingLookup.DataSource = oDTDEPENDING_RESULT oDependingLookup.Properties.DataSource = oDTDEPENDING_RESULT
oDependingLookup.Properties.ValueMember = oDTDEPENDING_RESULT.Columns.Item(0).ColumnName
oDependingLookup.Properties.DisplayMember = oDTDEPENDING_RESULT.Columns.Item(0).ColumnName
Case GetType(GridControl).ToString Case GetType(GridControl).ToString
'ClassControlCreator.GridTables 'ClassControlCreator.GridTables
Case GetType(CheckBox).ToString Case GetType(CheckBox).ToString
@ -2061,7 +2071,7 @@ Public Class frmValidator
End If End If
Next Next
End Sub End Sub
Private Sub LookupControl_EnablingControls(LookupControl As LookupControl2, SelectedValues As List(Of String)) Private Sub LookupControl_EnablingControls(LookupControl As LookupControl3, SelectedValues As List(Of String))
Dim oLOOKUPValue = SelectedValues.Item(0) Dim oLOOKUPValue = SelectedValues.Item(0)
LOGGER.Debug($"LookupControl_EnablingControls [{LookupControl.Name()}] - oLOOKUPValue is [{oLOOKUPValue}]!") LOGGER.Debug($"LookupControl_EnablingControls [{LookupControl.Name()}] - oLOOKUPValue is [{oLOOKUPValue}]!")
Dim oControlID = DirectCast(LookupControl.Tag, ClassControlCreator.ControlMetadata).Guid Dim oControlID = DirectCast(LookupControl.Tag, ClassControlCreator.ControlMetadata).Guid
@ -2073,7 +2083,7 @@ Public Class frmValidator
Controls2beEnabled(pCheckbox.Name) Controls2beEnabled(pCheckbox.Name)
End Sub End Sub
Private Sub LookupControl_DependingColumn(LookupControl As LookupControl2, SelectedValues As List(Of String)) Private Sub LookupControl_DependingColumn(LookupControl As LookupControl3, SelectedValues As List(Of String))
Dim oSQLColumnDatatable As DataTable = DTGRID_COLUMNS_WITH_SQL.Clone() Dim oSQLColumnDatatable As DataTable = DTGRID_COLUMNS_WITH_SQL.Clone()
Dim oExpression = $"SQL_COMMAND like '%#CTRL#{LookupControl.Name}%'" Dim oExpression = $"SQL_COMMAND like '%#CTRL#{LookupControl.Name}%'"
DTGRID_COLUMNS_WITH_SQL.Select(oExpression).CopyToDataTable(oSQLColumnDatatable, LoadOption.PreserveChanges) DTGRID_COLUMNS_WITH_SQL.Select(oExpression).CopyToDataTable(oSQLColumnDatatable, LoadOption.PreserveChanges)
@ -3547,14 +3557,14 @@ Public Class frmValidator
End If End If
End If End If
Case "DigitalData.Controls.LookupGrid.LookupControl2" Case "DigitalData.Controls.LookupGrid.LookupControl3"
Try Try
Dim oLookup As LookupControl2 = oControl Dim oLookup As LookupControl3 = oControl
oValueFromSource = GetVariableValuefromSource(oSourceIndexName, oIDBTyp, oIDBOverride) oValueFromSource = GetVariableValuefromSource(oSourceIndexName, oIDBTyp, oIDBOverride)
'Dim oWindreamValue = CURRENT_WMFILE.GetVariableValue(oSourceIndexName) 'Dim oWindreamValue = CURRENT_WMFILE.GetVariableValue(oSourceIndexName)
Try Try
oLookup.SelectedValues = Nothing oLookup.Properties.SelectedValues = Nothing
oLookup.SelectedValues = New List(Of String) oLookup.Properties.SelectedValues = New List(Of String)
Catch ex As Exception Catch ex As Exception
End Try End Try
@ -3575,19 +3585,19 @@ Public Class frmValidator
Next Next
End If End If
oLookup.SelectedValues = oArrlist oLookup.Properties.SelectedValues = oArrlist
_CURRENT_INDEX_ARRAY(oCount, 1) = oValueFromSource.ToString _CURRENT_INDEX_ARRAY(oCount, 1) = oValueFromSource.ToString
Else Else
Dim oArrlist As New List(Of String) Dim oArrlist As New List(Of String)
oArrlist.Add(oValueFromSource.ToString) oArrlist.Add(oValueFromSource.ToString)
oLookup.SelectedValues = oArrlist oLookup.Properties.SelectedValues = oArrlist
_CURRENT_INDEX_ARRAY(oCount, 1) = oValueFromSource.ToString _CURRENT_INDEX_ARRAY(oCount, 1) = oValueFromSource.ToString
End If End If
Else Else
If Not IsNothing(oLookup.SelectedValues) Then If Not IsNothing(oLookup.Properties.SelectedValues) Then
If oLookup.SelectedValues.Count = 0 And oDefaultValue <> String.Empty Then If oLookup.Properties.SelectedValues.Count = 0 And oDefaultValue <> String.Empty Then
Dim oValues As List(Of String) = oDefaultValue.Split(",").ToList() Dim oValues As List(Of String) = oDefaultValue.Split(",").ToList()
oLookup.SelectedValues = oValues oLookup.Properties.SelectedValues = oValues
End If End If
End If End If
End If End If
@ -3595,7 +3605,7 @@ Public Class frmValidator
Catch ex As Exception Catch ex As Exception
LOGGER.Error(ex) LOGGER.Error(ex)
LOGGER.Info(" - Unvorhergesehener Unexpected error in AddVorschlag_ComboBox - Indexname: " & oIndexName & " - Fehler: " & vbNewLine & ex.Message) LOGGER.Info(" - Unvorhergesehener Unexpected error in AddVorschlag_ComboBox - Indexname: " & oIndexName & " - Fehler: " & vbNewLine & ex.Message)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unvorhergesehener Unexpected error in Add LookupControl2:") MsgBox(ex.Message, MsgBoxStyle.Critical, "Unvorhergesehener Unexpected error in Add LookupControl3:")
End Try End Try
Case "System.Windows.Forms.DateTimePicker" Case "System.Windows.Forms.DateTimePicker"
@ -4376,25 +4386,25 @@ Public Class frmValidator
End If End If
Dim Type As String = oControl.GetType.ToString Dim Type As String = oControl.GetType.ToString
Select Case Type Select Case Type
Case "DigitalData.Controls.LookupGrid.LookupControl2" Case "DigitalData.Controls.LookupGrid.LookupControl3"
Try Try
Dim lookup As LookupControl2 = oControl Dim lookup As LookupControl3 = oControl
If lookup.SelectedValues.Count = 0 And oIsRequired = True Then If lookup.Properties.SelectedValues.Count = 0 And oIsRequired = True Then
oMissing = True oMissing = True
oErrMsgMissingInput = $"Kein Auswahl getroffen in LookupGrid '{oControl.Name}'" oErrMsgMissingInput = $"Kein Auswahl getroffen in LookupGrid '{oControl.Name}'"
oControl.BackColor = Color.Red oControl.BackColor = Color.Red
Exit For Exit For
Else Else
If lookup.MultiSelect = True Then If lookup.Properties.MultiSelect = True Then
Dim oLookupRows As Integer = lookup.SelectedValues.Count Dim oLookupRows As Integer = lookup.Properties.SelectedValues.Count
'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss 'Wenn kein Wert ausgewählt wurde und der Index aber gesetzt werden muss
If oLookupRows > 0 Then If oLookupRows > 0 Then
Dim ZeilenGrid As Integer = 0 Dim ZeilenGrid As Integer = 0
Dim myVektorArr As String() Dim myVektorArr As String()
'Jeden Werte des Datagridviews durchlaufen 'Jeden Werte des Datagridviews durchlaufen
For Each value As String In lookup.SelectedValues For Each value As String In lookup.Properties.SelectedValues
If value Is Nothing = False Then If value Is Nothing = False Then
'Das Array anpassen 'Das Array anpassen
ReDim Preserve myVektorArr(ZeilenGrid) ReDim Preserve myVektorArr(ZeilenGrid)
@ -4440,7 +4450,7 @@ Public Class frmValidator
Else Else
oMyInput = lookup.SelectedValues.FirstOrDefault() oMyInput = lookup.Properties.SelectedValues.FirstOrDefault()
If IsNothing(oMyInput) And oIsRequired = True Then If IsNothing(oMyInput) And oIsRequired = True Then
oMissing = True oMissing = True
oErrMsgMissingInput = $"Could not get FirstOrDefault-Value of LookUpGrid! - LookUPGridName: {lookup.Name}" oErrMsgMissingInput = $"Could not get FirstOrDefault-Value of LookUpGrid! - LookUPGridName: {lookup.Name}"