Merge branch 'master' of http://scmadmin@172.24.11.74:90/scm/git/RecordOrganizer
This commit is contained in:
commit
f60d30572c
@ -96,9 +96,10 @@
|
||||
final = ClassDatabase.Return_Datatable(sqlCommand)
|
||||
End If
|
||||
ClassControlValueCache.SaveToCache(sqlCommand, final)
|
||||
Console.WriteLine("CACHE MISS")
|
||||
Else
|
||||
final = cached
|
||||
' Console.WriteLine("CACHE HIT")
|
||||
Console.WriteLine("CACHE HIT")
|
||||
End If
|
||||
|
||||
Return final
|
||||
@ -127,10 +128,11 @@
|
||||
End Sub
|
||||
|
||||
Overloads Shared Sub SetDataSource(control As CustomComboBox, dt As DataTable)
|
||||
Dim sw As Stopwatch = Stopwatch.StartNew()
|
||||
Dim sw As New SW("SetDataSource CustomComboBox")
|
||||
Dim columnCount As Integer = dt.Columns.Count
|
||||
|
||||
control.BeginUpdate()
|
||||
PerfomanceHelper.SuspendDraw(control)
|
||||
|
||||
' Damit beim Setzen von DisplayMember und ValueMember kein Fehler auftritt,
|
||||
' muss die Datasource zunächst geleert werden und der selected index auf -1 gesetzt werden.
|
||||
@ -150,10 +152,10 @@
|
||||
' Als letztes setzen wir die DataSource
|
||||
control.DataSource = dt
|
||||
|
||||
PerfomanceHelper.ResumeDraw(control)
|
||||
control.EndUpdate()
|
||||
|
||||
sw.Stop()
|
||||
' Console.WriteLine("SetDataSource for {0} took {1}ms", control.Name, sw.ElapsedMilliseconds)
|
||||
sw.Done()
|
||||
End Sub
|
||||
|
||||
Overloads Shared Sub SetDataSource(control As DevExpress.XtraEditors.CheckedListBoxControl, dt As DataTable)
|
||||
@ -367,7 +369,10 @@
|
||||
|
||||
Public Shared Sub LoadList(control As CustomComboBox, formId As Integer, connID As Object, SQLCommand As String)
|
||||
Try
|
||||
Dim sw As New SW("LoadList CustomComboBox")
|
||||
Dim sw1 As New SW("GetDynamicValue CustomComboBox")
|
||||
Dim dynamic As DynamicValue = GetDynamicValue(DirectCast(control.Tag, ClassControlMetadata).Id, formId, connID, SQLCommand)
|
||||
sw1.Done()
|
||||
|
||||
If dynamic.StaticList IsNot Nothing Then
|
||||
control.DataSource = dynamic.StaticList
|
||||
@ -377,6 +382,7 @@
|
||||
SetDataSource(control, dynamic.DataTable)
|
||||
CalculateDropdownWidth(control, dynamic.DataTable)
|
||||
End If
|
||||
sw.Done()
|
||||
Catch ex As Exception
|
||||
MsgBox("Error in Combobox.LoadList:" & vbNewLine & ex.Message)
|
||||
End Try
|
||||
@ -444,6 +450,8 @@
|
||||
|
||||
Public Shared Sub LoadList(control As DevExpress.XtraEditors.CheckedListBoxControl, formId As Integer, conn_Id As Object, SQLCommand As String)
|
||||
Try
|
||||
Dim sw As New SW("LoadList CheckedListBoxControl")
|
||||
|
||||
Dim dynamic As DynamicValue = GetDynamicValue(DirectCast(control.Tag, ClassControlMetadata).Id, formId, conn_Id, SQLCommand)
|
||||
|
||||
If dynamic.StaticList IsNot Nothing Then
|
||||
@ -459,6 +467,7 @@
|
||||
SetDataSource(control, dynamic.DataTable)
|
||||
End If
|
||||
|
||||
sw.Done()
|
||||
Catch ex As Exception
|
||||
MsgBox("Error in CheckedListBox.LoadList:" & vbNewLine & ex.Message)
|
||||
End Try
|
||||
@ -477,6 +486,8 @@
|
||||
End Sub
|
||||
|
||||
Public Shared Sub LoadList(control As DevExpress.XtraEditors.ListBoxControl, formId As Integer, ConnId As Object, SQLCommand As String)
|
||||
Dim sw As New SW("LoadList ListBoxControl")
|
||||
|
||||
Dim dynamic As DynamicValue = GetDynamicValue(DirectCast(control.Tag, ClassControlMetadata).Id, formId, ConnId, SQLCommand)
|
||||
|
||||
If dynamic.StaticList IsNot Nothing Then
|
||||
@ -486,6 +497,8 @@
|
||||
If dynamic.DataTable IsNot Nothing AndAlso dynamic.DataTable.Rows.Count > 0 Then
|
||||
SetDataSource(control, dynamic.DataTable)
|
||||
End If
|
||||
|
||||
sw.Done()
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@ -503,6 +516,8 @@
|
||||
|
||||
Public Class DataGridViewCheckable : Inherits _ListControl
|
||||
Public Shared Sub LoadList(control As DevExpress.XtraGrid.GridControl, formId As Integer, ConnId As Object, SQLCommand As String)
|
||||
Dim sw As New SW("LoadList GridControl")
|
||||
|
||||
Dim dynamic As DynamicValue = GetDynamicValue(DirectCast(control.Tag, ClassControlMetadata).Id, formId, ConnId, SQLCommand)
|
||||
|
||||
If dynamic.StaticList IsNot Nothing Then
|
||||
|
||||
@ -1,22 +1,7 @@
|
||||
Imports DevExpress.XtraEditors.Controls
|
||||
Imports System.Runtime.InteropServices
|
||||
|
||||
Public Class ClassControlValues
|
||||
|
||||
<DllImport("user32.dll")> _
|
||||
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()
|
||||
@ -194,6 +179,8 @@ Public Class ClassControlValues
|
||||
If LogErrorsOnly = False Then ClassLogger.Add(String.Format(" >> LoadControlHints took {0} to load", Format(elapsed, "0.000000000") & " seconds"), False)
|
||||
sw.Start()
|
||||
For Each control As Control In controls
|
||||
PerfomanceHelper.SuspendDraw(control)
|
||||
|
||||
Dim ControlId As Integer = DirectCast(control.Tag, ClassControlMetadata).Id
|
||||
' Wert per LINQ aus DT_ControlValues suchen der zur aktuellen controlId passt
|
||||
Dim values As List(Of Object) = (From row In DT_ControlValues.AsEnumerable()
|
||||
@ -205,6 +192,8 @@ Public Class ClassControlValues
|
||||
Else
|
||||
LoadControlValue(RecordId, ParentRecordId, ControlId, control, values, Entity_ID)
|
||||
End If
|
||||
|
||||
PerfomanceHelper.ResumeDraw(control)
|
||||
Next
|
||||
|
||||
elapsed = sw.Elapsed.TotalSeconds
|
||||
@ -348,7 +337,7 @@ Public Class ClassControlValues
|
||||
For Each Ctrl As Control In controls
|
||||
Dim controlTagId = DirectCast(Ctrl.Tag, ClassControlMetadata).Id
|
||||
|
||||
|
||||
PerfomanceHelper.SuspendDraw(Ctrl)
|
||||
|
||||
'If controlTagId = 474 Then
|
||||
' MsgBox("Thats it")
|
||||
@ -376,10 +365,9 @@ Public Class ClassControlValues
|
||||
Case GetType(DevExpress.XtraGrid.GridControl)
|
||||
Dim grid = DirectCast(Ctrl, DevExpress.XtraGrid.GridControl)
|
||||
ControlLoader.DataGridViewCheckable.LoadList(grid, FormID, ConnID, sqlcommand)
|
||||
|
||||
End Select
|
||||
|
||||
|
||||
PerfomanceHelper.ResumeDraw(Ctrl)
|
||||
Next
|
||||
|
||||
sw.Stop()
|
||||
@ -426,6 +414,8 @@ Public Class ClassControlValues
|
||||
|
||||
sqlcommand = ReplaceSqlCommandPlaceholders(sqlcommand, RecordId, ParentRecordId, entity_ID)
|
||||
|
||||
PerfomanceHelper.SuspendDraw(Ctrl)
|
||||
|
||||
Select Case Ctrl.GetType()
|
||||
Case GetType(CustomComboBox)
|
||||
Dim combobox = DirectCast(Ctrl, CustomComboBox)
|
||||
@ -440,6 +430,8 @@ Public Class ClassControlValues
|
||||
ControlLoader.CheckedListBox.LoadList(chlistbox, FormId, connID, sqlcommand)
|
||||
|
||||
End Select
|
||||
|
||||
PerfomanceHelper.ResumeDraw(Ctrl)
|
||||
Next
|
||||
Dim elapsed As Double
|
||||
elapsed = SW.Elapsed.TotalSeconds
|
||||
|
||||
@ -416,4 +416,30 @@
|
||||
|
||||
End Class
|
||||
|
||||
Public Class PerfomanceHelper
|
||||
<Runtime.InteropServices.DllImport("user32.dll")> _
|
||||
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 = &HB
|
||||
|
||||
''' <summary>
|
||||
''' Verhindert Draw-Events. Am Ende sollte ResumeDraw `aufgerufen` werden.
|
||||
''' </summary>
|
||||
''' <param name="c"></param>
|
||||
''' <remarks></remarks>
|
||||
Public Shared Sub SuspendDraw(c As Control)
|
||||
SendMessage(c.Handle, WM_SETREDRAW, False, 0)
|
||||
End Sub
|
||||
|
||||
''' <summary>
|
||||
''' Lässt die Draw-Events wieder zu. Davor sollte `SuspendDraw` aufgerufen werden
|
||||
''' </summary>
|
||||
''' <param name="c"></param>
|
||||
''' <remarks></remarks>
|
||||
Public Shared Sub ResumeDraw(c As Control)
|
||||
SendMessage(c.Handle, WM_SETREDRAW, True, 0)
|
||||
c.Refresh()
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
End Module
|
||||
|
||||
@ -2907,7 +2907,7 @@ Public Class frmConstructor_Main
|
||||
Dim str = String.Empty
|
||||
|
||||
If DT_VWPMO_CONSTRUCTOR_FORMS.Rows.Count >= 3 Then
|
||||
str &= ACT_EBENE_STRING
|
||||
str &= System.Text.RegularExpressions.Regex.Replace(ACT_EBENE_STRING, "\s\(\d+\)", "")
|
||||
str &= " - "
|
||||
End If
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user