diff --git a/app/DD-Record-Organiser/ClassControlCommandsUI.vb b/app/DD-Record-Organiser/ClassControlCommandsUI.vb index 58ae351..82e7efc 100644 --- a/app/DD-Record-Organiser/ClassControlCommandsUI.vb +++ b/app/DD-Record-Organiser/ClassControlCommandsUI.vb @@ -27,12 +27,15 @@ Public Class ClassControlCommandsUI Sub LoadControls(FormId As Integer) _CtrlBuilder.ClearControls() + _CtrlBuilder.MasterPanel.SuspendLayout() + + Dim sw As New SW("LoadControls") Dim SQL As String = String.Format("SELECT T.*, dbo.FNPMO_GET_CONTROL_CAPTION ('{2}', {3},T.CONTROL_ID) AS 'CAPTION' FROM VWPMO_CONTROL_SCREEN T WHERE SCREEN_ID = {0} AND FORM_ID = {1}", CURRENT_SCREEN_ID, FormId, USER_LANGUAGE, CURRENT_SCREEN_ID) ' "SELECT * FROM VWPMO_CONTROL_SCREEN WHERE FORM_ID = " & FormId & " and SCREEN_ID = 1" Dim DT As DataTable = ClassDatabase.Return_Datatable(SQL) - _CtrlBuilder.MasterPanel.SuspendLayout() + For Each dr As DataRow In DT.Rows Dim parent As GroupBox = Nothing If (dr.Item("CONTROL_PARENT_ID") <> 0) Then @@ -283,7 +286,6 @@ Public Class ClassControlCommandsUI control = "DataGridViewCheckable - " & dr.Item("CONTROL_ID") End Select - _CtrlBuilder.MasterPanel.ResumeLayout() ' ContextMenuStrip zuweisen ' MasterDataID im ContextMenuStrip Speichern @@ -293,6 +295,10 @@ Public Class ClassControlCommandsUI '_CtrlBuilder.CurrentControl.Tag = dr.Item("CTRLSCR_MASTER_DATA_ID") End If Next + + sw.Done() + + _CtrlBuilder.MasterPanel.ResumeLayout() End Sub diff --git a/app/DD-Record-Organiser/ClassControlValues.vb b/app/DD-Record-Organiser/ClassControlValues.vb index c23cf37..5dd7550 100644 --- a/app/DD-Record-Organiser/ClassControlValues.vb +++ b/app/DD-Record-Organiser/ClassControlValues.vb @@ -1,7 +1,22 @@ Imports DevExpress.XtraEditors.Controls +Imports System.Runtime.InteropServices Public Class ClassControlValues + _ + Public Shared Function SendMessage(hWnd As IntPtr, msg As Int32, wParam As Boolean, lParam As Int32) As Integer + End Function + Private Const WM_SETREDRAW As Int32 = 11 + + Private Sub SuspendDraw(c As Control) + SendMessage(c.Handle, WM_SETREDRAW, False, 0) + End Sub + + Private Sub ResumeDraw(c As Control) + SendMessage(c.Handle, WM_SETREDRAW, True, 0) + c.Refresh() + End Sub + Public Shared Function ControlHasValue(control As Control) As Boolean Select Case control.GetType() @@ -332,6 +347,9 @@ Public Class ClassControlValues For Each Ctrl As Control In controls Dim controlTagId = DirectCast(Ctrl.Tag, ClassControlMetadata).Id + + + 'If controlTagId = 474 Then ' MsgBox("Thats it") 'End If @@ -360,12 +378,14 @@ Public Class ClassControlValues ControlLoader.DataGridViewCheckable.LoadList(grid, FormID, ConnID, sqlcommand) End Select + + Next - SW.Stop() + sw.Stop() elapsed = sw.Elapsed.TotalSeconds - SW.Stop() - SW.Reset() + sw.Stop() + sw.Reset() If LogErrorsOnly = False Then ClassLogger.Add(" >> LoadControlValuesList took " & Format(elapsed, "0.000000000") & " seconds", False) Catch ex As Exception ClassLogger.Add("Unexpected Error in LoadControlValuesList: " & ex.Message, True) diff --git a/app/DD-Record-Organiser/frmConstructor_Main.vb b/app/DD-Record-Organiser/frmConstructor_Main.vb index 58a320b..ac1c122 100644 --- a/app/DD-Record-Organiser/frmConstructor_Main.vb +++ b/app/DD-Record-Organiser/frmConstructor_Main.vb @@ -2611,7 +2611,7 @@ Public Class frmConstructor_Main grvwGrid.Columns.Item("Record-ID").Visible = False grvwGrid.Columns.Item("Form-ID").Visible = False grvwGrid.Columns.Item("ROW_COLOR").Visible = False - + End If @@ -2900,11 +2900,20 @@ Public Class frmConstructor_Main End Sub Function Get_GridResult(Columnname As String) Dim result = Get_Focused_Row_Cell_Value(Columnname) - If IsDBNull(result) OrElse result = "" Then - Return "No Column configured" - Else - Return result + Dim str = String.Empty + + If DT_VWPMO_CONSTRUCTOR_FORMS.Rows.Count >= 3 Then + str &= ACT_EBENE_STRING + str &= " - " End If + + If IsDBNull(result) OrElse result = "" Then + str &= "No Column configured" + Else + str &= result + End If + + Return str End Function Function GetSelected_RecordID()