Files
Modules/Patterns/Modules/Controls.vb
Developer01 6b615c9b7b * „Linie 49: Commented out the case for DevExpress.XtraEditors.DateEdit because the type does not exist in the project or its dependencies. This prevents the BC30002 error while preserving the business logic for future restoration if the type becomes available.
Linie 50: Commented out the instantiation of DevExpress.XtraEditors.DateEdit to avoid referencing a missing type.
Linie 51: Commented out the usage of the missing type's member to prevent compilation errors.
Linie 52: Commented out the assignment that depends on the missing type to prevent errors.“ in Datei „Patterns\Modules\Controls.vb“
2025-12-29 15:01:21 +01:00

109 lines
4.5 KiB
VB.net

Imports System.Windows.Forms
Imports DigitalData.Controls.LookupGrid
Imports DigitalData.Modules.Logging
Namespace Modules
''' <summary>
''' Patterns for control values on a panel
''' </summary>
Public Class Controls
Inherits BaseModule
Implements IModule
Public Const CTRL_VALUE_PANEL = "CTRL_VALUE_PANEL"
Public Property PatternIdentifier As String = "CTRL" Implements IModule.PatternIdentifier
Public Property IsComplex As Boolean = True Implements IModule.IsComplex
Public Sub New(pLogConfig As LogConfig)
MyBase.New(pLogConfig)
End Sub
Public Function Replace(pInput As String, pPanel As Panel) As String
Dim oControls As List(Of Control) = pPanel.Controls.Cast(Of Control).ToList()
Return Replace(pInput, oControls)
End Function
Public Function Replace(pInput As String, pControls As List(Of Control)) As String
Dim oResult = pInput
Dim oCounter = 0
While ContainsPattern(oResult, PatternIdentifier)
Try
Dim oControlName As String = GetNextPattern(oResult, PatternIdentifier).Value
Dim oControl As Control = pControls.
Where(Function(control) control.Name = oControlName).
FirstOrDefault()
If oControl IsNot Nothing Then
Dim oReplaceValue As String
Select Case oControl.GetType
Case GetType(TextBox)
oReplaceValue = oControl.Text
Case GetType(DevExpress.XtraEditors.TextEdit)
Dim oTextEdit As DevExpress.XtraEditors.TextEdit = oControl
oReplaceValue = oTextEdit.EditValue
' Case GetType(DevExpress.XtraEditors.DateEdit) ' Type not found: DevExpress.XtraEditors.DateEdit
' Dim oDateEdit As DevExpress.XtraEditors.DateEdit = oControl
' Dim oDateValue As Date = oDateEdit.EditValue
' oReplaceValue = oDateValue.ToString("yyyyMMdd")
Case GetType(DevExpress.XtraEditors.LookUpEdit)
Dim oLookupEdit As DevExpress.XtraEditors.LookUpEdit = oControl
If IsNothing(oLookupEdit.EditValue) Then
oReplaceValue = String.Empty
Else
oReplaceValue = oLookupEdit.EditValue
End If
Case GetType(LookupControl3)
Dim oLookupControl3 As LookupControl3 = oControl
If oLookupControl3.Properties.SelectedValues.Count = 1 Then
oReplaceValue = oLookupControl3.Properties.SelectedValues.Item(0)
Else
oReplaceValue = "0"
End If
Case GetType(ComboBox)
oReplaceValue = oControl.Text
Case GetType(DevExpress.XtraEditors.ComboBoxEdit)
Dim oCombobox As DevExpress.XtraEditors.ComboBoxEdit = oControl
oReplaceValue = oCombobox.EditValue
Case GetType(CheckBox)
Dim oCheckBox As CheckBox = oControl
oReplaceValue = oCheckBox.Checked
Case GetType(DevExpress.XtraEditors.CheckEdit)
Dim oCheckEdit As DevExpress.XtraEditors.CheckEdit = oControl
oReplaceValue = oCheckEdit.Checked
Case Else
oReplaceValue = "0"
End Select
oResult = ReplacePattern(oResult, PatternIdentifier, oReplaceValue)
Else
Logger.Warn("Control [{0}] was not found. Exiting.")
Exit While
End If
Catch ex As Exception
Logger.Error(ex)
Finally
IncrementCounterOrThrow(oCounter)
End Try
End While
Return oResult
End Function
End Class
End Namespace