Improve Main form performance

This commit is contained in:
Jonathan Jenne 2021-12-06 10:23:37 +01:00
parent 52ac886c1f
commit 51c053769e
5 changed files with 46 additions and 10 deletions

View File

@ -28,6 +28,7 @@ Partial Class frmMain
Me.BarButtonItem3 = New DevExpress.XtraBars.BarButtonItem()
Me.RibbonPage1 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup1 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonPage3 = New DevExpress.XtraBars.Ribbon.RibbonPage()
Me.RibbonPageGroup2 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.RibbonStatusBar1 = New DevExpress.XtraBars.Ribbon.RibbonStatusBar()
@ -38,7 +39,7 @@ Partial Class frmMain
Me.colName = New DevExpress.XtraGrid.Columns.GridColumn()
Me.colDescription = New DevExpress.XtraGrid.Columns.GridColumn()
Me.colFileName = New DevExpress.XtraGrid.Columns.GridColumn()
Me.RibbonPageGroup3 = New DevExpress.XtraBars.Ribbon.RibbonPageGroup()
Me.SplashScreenManager1 = New DevExpress.XtraSplashScreen.SplashScreenManager(Me, GetType(Global.MultiTool.Form.frmWaitForm), True, True)
CType(Me.RibbonControl1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.SvgImageCollection1, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.GridControl1, System.ComponentModel.ISupportInitialize).BeginInit()
@ -107,6 +108,13 @@ Partial Class frmMain
Me.RibbonPageGroup1.Name = "RibbonPageGroup1"
Me.RibbonPageGroup1.Text = "Start"
'
'RibbonPageGroup3
'
Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
Me.RibbonPageGroup3.Text = "RibbonPageGroup3"
'
'RibbonPage3
'
Me.RibbonPage3.Groups.AddRange(New DevExpress.XtraBars.Ribbon.RibbonPageGroup() {Me.RibbonPageGroup2})
@ -179,12 +187,9 @@ Partial Class frmMain
Me.colFileName.Visible = True
Me.colFileName.VisibleIndex = 2
'
'RibbonPageGroup3
'SplashScreenManager1
'
Me.RibbonPageGroup3.Alignment = DevExpress.XtraBars.Ribbon.RibbonPageGroupAlignment.Far
Me.RibbonPageGroup3.ItemLinks.Add(Me.BarButtonItem1)
Me.RibbonPageGroup3.Name = "RibbonPageGroup3"
Me.RibbonPageGroup3.Text = "RibbonPageGroup3"
Me.SplashScreenManager1.ClosingDelay = 500
'
'frmMain
'
@ -226,4 +231,5 @@ Partial Class frmMain
Friend WithEvents BarButtonItem2 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents BarButtonItem3 As DevExpress.XtraBars.BarButtonItem
Friend WithEvents RibbonPageGroup3 As DevExpress.XtraBars.Ribbon.RibbonPageGroup
Friend WithEvents SplashScreenManager1 As DevExpress.XtraSplashScreen.SplashScreenManager
End Class

View File

@ -16,7 +16,7 @@ Public Class frmMain
Private GridBuilder As GridBuilder
Private FormHelper As FormHelper
Private Async Sub frmMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
Text = String.Format(My.Resources.frmShared._0____WebService_Multitool_für_WinLine, My.Resources.frmShared.Auswahl_der_Vorlage)
@ -24,6 +24,19 @@ Public Class frmMain
LogConfig.Debug = True
Logger = LogConfig.GetLogger()
Logger.Info("Starting {0}, Version [{1}]", Application.ProductName, Application.ProductVersion)
Catch ex As Exception
FormHelper.ShowError(ex, My.Resources.frmShared.Laden_des_Formulars)
End Try
End Sub
Private Async Sub frmMain_Shown(sender As Object, e As EventArgs) Handles Me.Shown
SplashScreenManager1.ShowWaitForm()
Try
SplashScreenManager1.SetWaitFormDescription("Initialisierung der Grundfunktionen")
FormHelper = New FormHelper(LogConfig)
ConfigManager = New ConfigManager(Of [Shared].Config)(LogConfig,
Application.UserAppDataPath,
@ -48,10 +61,14 @@ Public Class frmMain
End If
End If
SplashScreenManager1.SetWaitFormDescription("Initialisierung der Datenbankverbindung")
' Initialize Database
Dim oConnectionString = MSSQLServer.DecryptConnectionString(ConfigManager.Config.ConnectionString)
Database = New MSSQLServer(LogConfig, oConnectionString)
SplashScreenManager1.SetWaitFormDescription("Initialisierung der Vorlagen")
' Initialize Schemas
TemplateLoader = New TemplateLoader(LogConfig, Database)
Await TemplateLoader.LoadGeneralConfiguration()
@ -74,7 +91,10 @@ Public Class frmMain
GridControl1.DataSource = oBindingSource
Catch ex As Exception
FormHelper.ShowError(ex, My.Resources.frmShared.Laden_des_Formulars)
FormHelper.ShowError(ex, My.Resources.frmImportMainExtra.Laden_der_Winline_Daten)
Finally
SplashScreenManager1.CloseWaitForm()
End Try
End Sub
@ -135,4 +155,7 @@ Public Class frmMain
Private Sub BarButtonItem3_ItemClick(sender As Object, e As DevExpress.XtraBars.ItemClickEventArgs) Handles BarButtonItem3.ItemClick
TryOpenDirectory(LogConfig.LogDirectory, My.Resources.frmImportMainExtra.Logverzeichnis)
End Sub
End Class

View File

@ -3,9 +3,11 @@
Public Class BaseClass
Public ReadOnly LogConfig As LogConfig
Public ReadOnly Logger As Logger
Public ReadOnly Helpers As Helpers
Public Sub New(pLogConfig As LogConfig)
LogConfig = pLogConfig
Logger = LogConfig.GetLogger()
Helpers = New Helpers(pLogConfig)
End Sub
End Class

View File

@ -1,10 +1,12 @@
Imports DigitalData.Modules.Logging
Public Class Helpers
Inherits BaseClass
Private LogConfig As LogConfig
Private Logger As Logger
Public Sub New(pLogConfig As LogConfig)
MyBase.New(pLogConfig)
LogConfig = pLogConfig
Logger = pLogConfig.GetLogger()
End Sub
Public Function GetDateDirectory(pBaseDirectory As String)

View File

@ -47,7 +47,9 @@
<Reference Include="AutoMapper, Version=10.0.0.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005, processorArchitecture=MSIL">
<HintPath>..\packages\AutoMapper.10.1.1\lib\net461\AutoMapper.dll</HintPath>
</Reference>
<Reference Include="DevExpress.Data.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.DataAccess.v19.2, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.Printing.v19.2.Core, Version=19.2.3.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DigitalData.Modules.Config">
<HintPath>..\..\DDMonorepo\Modules.Config\bin\Debug\DigitalData.Modules.Config.dll</HintPath>
</Reference>
@ -124,6 +126,7 @@
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<Compile Include="Report\ReportGenerator.vb" />
<Compile Include="Templates\GeneralConfig.vb" />
<Compile Include="Templates\MandatorConfig.vb" />
<Compile Include="Templates\MandatorConfigItem.vb" />