fix language loading

This commit is contained in:
Jonathan Jenne 2022-11-07 16:42:14 +01:00
parent 8169bb5a7a
commit 360572dd29
10 changed files with 111 additions and 20 deletions

View File

@ -0,0 +1,10 @@
Namespace My
' Für MyApplication sind folgende Ereignisse verfügbar:
' Startup: Wird beim Starten der Anwendung noch vor dem Erstellen des Startformulars ausgelöst.
' Shutdown: Wird nach dem Schließen aller Anwendungsformulare ausgelöst. Dieses Ereignis wird nicht ausgelöst, wenn die Anwendung mit einem Fehler beendet wird.
' UnhandledException: Wird bei einem Ausnahmefehler ausgelöst.
' StartupNextInstance: Wird beim Starten einer Einzelinstanzanwendung ausgelöst, wenn die Anwendung bereits aktiv ist.
' NetworkAvailabilityChanged: Wird beim Herstellen oder Trennen der Netzwerkverbindung ausgelöst.
Partial Friend Class MyApplication
End Class
End Namespace

View File

@ -14,6 +14,10 @@ Public Class ClassInit
Public _database As MSSQLServer Public _database As MSSQLServer
Private _DataASorDB As ClassDataASorDB Private _DataASorDB As ClassDataASorDB
Private Class S
Inherits My.Resources.frmMain_Strings
End Class
Public Sub InitLogger() Public Sub InitLogger()
LogConfig = New LogConfig(LogConfig.PathType.AppData, Nothing, Nothing, Application.CompanyName, Application.ProductName) LogConfig = New LogConfig(LogConfig.PathType.AppData, Nothing, Nothing, Application.CompanyName, Application.ProductName)
Logger = LogConfig.GetLogger() Logger = LogConfig.GetLogger()
@ -222,6 +226,11 @@ Public Class ClassInit
USER_IS_ADMIN = NotNull(DT_CHECKUSER_MODULE.Rows(0).Item("IS_ADMIN"), False) USER_IS_ADMIN = NotNull(DT_CHECKUSER_MODULE.Rows(0).Item("IS_ADMIN"), False)
ADDITIONAL_TITLE = NotNull(DT_CHECKUSER_MODULE.Rows(0).Item("ADDITIONAL_TITLE"), "") ADDITIONAL_TITLE = NotNull(DT_CHECKUSER_MODULE.Rows(0).Item("ADDITIONAL_TITLE"), "")
Logger.Debug("User Id: [{0}]", USER_ID)
Logger.Debug("User Email: [{0}]", USER_EMAIL)
Logger.Debug("User Language: [{0}]", USER_LANGUAGE)
Logger.Debug("User Dateformat: [{0}]", USER_DATE_FORMAT)
If ADDITIONAL_TITLE = String.Empty Then If ADDITIONAL_TITLE = String.Empty Then
ADDITIONAL_TITLE = My.Application.Info.ProductName ADDITIONAL_TITLE = My.Application.Info.ProductName
End If End If
@ -437,7 +446,7 @@ Public Class ClassInit
DT_USER_PROFILES = Database.GetDatatable(ProfileSQL) DT_USER_PROFILES = Database.GetDatatable(ProfileSQL)
If DT_USER_PROFILES Is Nothing OrElse DT_USER_PROFILES.Rows.Count = 0 Then If DT_USER_PROFILES Is Nothing OrElse DT_USER_PROFILES.Rows.Count = 0 Then
Return "Es wurden noch keine Profile für den aktuellen Benutzer konfiguriert." Return S.Es_wurden_noch_keine_Profile_für_den_aktuellen_Benutzer_konfiguriert_
End If End If
DTPROFILE_REL_PROCESS = Database.GetDatatable(oProcessSQL) DTPROFILE_REL_PROCESS = Database.GetDatatable(oProcessSQL)
@ -446,9 +455,9 @@ Public Class ClassInit
Catch ex As Exception Catch ex As Exception
Logger.Error(ex) Logger.Error(ex)
MsgBox("Unexpected Error in Refresh_Profile_Links: " & ex.Message, MsgBoxStyle.Critical) MsgBox("Unexpected Error in Refresh_Profile_Links: " & ex.Message, MsgBoxStyle.Critical)
Return "Fehler bei Aktualisierung!" Return S.Fehler_bei_der_Aktualisierung_
End Try End Try
Return "Aktualisierung erfolgreich." Return S.Aktualisierung_erfolgreich_
End Function End Function
End Class End Class

View File

@ -12,7 +12,7 @@
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<MyType>WindowsForms</MyType> <MyType>WindowsForms</MyType>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion> <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> <AutoGenerateBindingRedirects>false</AutoGenerateBindingRedirects>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
<PublishUrl>publish\</PublishUrl> <PublishUrl>publish\</PublishUrl>
<Install>true</Install> <Install>true</Install>
@ -180,6 +180,7 @@
<Import Include="System.Threading.Tasks" /> <Import Include="System.Threading.Tasks" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Include="ApplicationEvents.vb" />
<Compile Include="ClassAutomation.vb" /> <Compile Include="ClassAutomation.vb" />
<Compile Include="ClassClipboardWatcher.vb" /> <Compile Include="ClassClipboardWatcher.vb" />
<Compile Include="ClassDataASorDB.vb" /> <Compile Include="ClassDataASorDB.vb" />

View File

@ -73,6 +73,15 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Aktualisierung erfolgreich. ähnelt.
'''</summary>
Friend Shared ReadOnly Property Aktualisierung_erfolgreich_() As String
Get
Return ResourceManager.GetString("Aktualisierung erfolgreich.", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Clipboard-Watcher starten ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Clipboard-Watcher starten ähnelt.
'''</summary> '''</summary>
@ -137,6 +146,15 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Es wurden noch keine Profile für den aktuellen Benutzer konfiguriert. ähnelt.
'''</summary>
Friend Shared ReadOnly Property Es_wurden_noch_keine_Profile_für_den_aktuellen_Benutzer_konfiguriert_() As String
Get
Return ResourceManager.GetString("Es wurden noch keine Profile für den aktuellen Benutzer konfiguriert.", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Es wurden weder Dokumente noch Daten gefunden für die Suche nach &apos;{0}&apos;! ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Es wurden weder Dokumente noch Daten gefunden für die Suche nach &apos;{0}&apos;! ähnelt.
'''</summary> '''</summary>
@ -146,6 +164,15 @@ Namespace My.Resources
End Get End Get
End Property End Property
'''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Fehler bei der Aktualisierung. ähnelt.
'''</summary>
Friend Shared ReadOnly Property Fehler_bei_der_Aktualisierung_() As String
Get
Return ResourceManager.GetString("Fehler bei der Aktualisierung.", resourceCulture)
End Get
End Property
'''<summary> '''<summary>
''' Sucht eine lokalisierte Zeichenfolge, die Fehler beim Auswerten der Profile. Mehr Informationen im Log. ähnelt. ''' Sucht eine lokalisierte Zeichenfolge, die Fehler beim Auswerten der Profile. Mehr Informationen im Log. ähnelt.
'''</summary> '''</summary>

View File

@ -120,6 +120,9 @@
<data name="Aktualisiert: {0}" xml:space="preserve"> <data name="Aktualisiert: {0}" xml:space="preserve">
<value>Refreshed: {0}</value> <value>Refreshed: {0}</value>
</data> </data>
<data name="Aktualisierung erfolgreich." xml:space="preserve">
<value>Refresh successful.</value>
</data>
<data name="Clipboard-Watcher starten" xml:space="preserve"> <data name="Clipboard-Watcher starten" xml:space="preserve">
<value>Start Clipboard-Watcher</value> <value>Start Clipboard-Watcher</value>
</data> </data>
@ -141,9 +144,15 @@
<data name="Es wurden keine passenden Profile gefunden für die Suche nach '{0}'!" xml:space="preserve"> <data name="Es wurden keine passenden Profile gefunden für die Suche nach '{0}'!" xml:space="preserve">
<value>No matching profiles could be found for the search term '{0}'!</value> <value>No matching profiles could be found for the search term '{0}'!</value>
</data> </data>
<data name="Es wurden noch keine Profile für den aktuellen Benutzer konfiguriert." xml:space="preserve">
<value>No profiles are configured for this user yet.</value>
</data>
<data name="Es wurden weder Dokumente noch Daten gefunden für die Suche nach '{0}'!" xml:space="preserve"> <data name="Es wurden weder Dokumente noch Daten gefunden für die Suche nach '{0}'!" xml:space="preserve">
<value>No matching documents or records could be found for the search term '{0}'!</value> <value>No matching documents or records could be found for the search term '{0}'!</value>
</data> </data>
<data name="Fehler bei der Aktualisierung." xml:space="preserve">
<value>Error while refreshing!</value>
</data>
<data name="Fehler beim Auswerten der Profile. Mehr Informationen im Log." xml:space="preserve"> <data name="Fehler beim Auswerten der Profile. Mehr Informationen im Log." xml:space="preserve">
<value>Error while evaluating the profiles. Check the log for more information.</value> <value>Error while evaluating the profiles. Check the log for more information.</value>
</data> </data>

View File

@ -120,6 +120,9 @@
<data name="Aktualisiert: {0}" xml:space="preserve"> <data name="Aktualisiert: {0}" xml:space="preserve">
<value>Rafraîchis: {0}</value> <value>Rafraîchis: {0}</value>
</data> </data>
<data name="Aktualisierung erfolgreich." xml:space="preserve">
<value>Mise à jour réussie.</value>
</data>
<data name="Clipboard-Watcher starten" xml:space="preserve"> <data name="Clipboard-Watcher starten" xml:space="preserve">
<value>Démarrer Clipboard-Watcher</value> <value>Démarrer Clipboard-Watcher</value>
</data> </data>
@ -141,9 +144,15 @@
<data name="Es wurden keine passenden Profile gefunden für die Suche nach '{0}'!" xml:space="preserve"> <data name="Es wurden keine passenden Profile gefunden für die Suche nach '{0}'!" xml:space="preserve">
<value>Aucun profil correspondant n'a pu être trouvé pour le terme de recherche '{0}' !</value> <value>Aucun profil correspondant n'a pu être trouvé pour le terme de recherche '{0}' !</value>
</data> </data>
<data name="Es wurden noch keine Profile für den aktuellen Benutzer konfiguriert." xml:space="preserve">
<value>Aucun profil n'a encore été configuré pour l'utilisateur actuel.</value>
</data>
<data name="Es wurden weder Dokumente noch Daten gefunden für die Suche nach '{0}'!" xml:space="preserve"> <data name="Es wurden weder Dokumente noch Daten gefunden für die Suche nach '{0}'!" xml:space="preserve">
<value>Aucun document ou enregistrement correspondant n'a pu être trouvé pour le terme de recherche '{0}' !</value> <value>Aucun document ou enregistrement correspondant n'a pu être trouvé pour le terme de recherche '{0}' !</value>
</data> </data>
<data name="Fehler bei der Aktualisierung." xml:space="preserve">
<value>Erreur lors de la mise à jour.</value>
</data>
<data name="Fehler beim Auswerten der Profile. Mehr Informationen im Log." xml:space="preserve"> <data name="Fehler beim Auswerten der Profile. Mehr Informationen im Log." xml:space="preserve">
<value>Erreur lors de l'évaluation des profils. Vérifiez le journal pour plus d'informations.</value> <value>Erreur lors de l'évaluation des profils. Vérifiez le journal pour plus d'informations.</value>
</data> </data>

View File

@ -120,6 +120,9 @@
<data name="Aktualisiert: {0}" xml:space="preserve"> <data name="Aktualisiert: {0}" xml:space="preserve">
<value>Aktualisiert: {0}</value> <value>Aktualisiert: {0}</value>
</data> </data>
<data name="Aktualisierung erfolgreich." xml:space="preserve">
<value>Aktualisierung erfolgreich.</value>
</data>
<data name="Clipboard-Watcher starten" xml:space="preserve"> <data name="Clipboard-Watcher starten" xml:space="preserve">
<value>Clipboard-Watcher starten</value> <value>Clipboard-Watcher starten</value>
</data> </data>
@ -141,9 +144,15 @@
<data name="Es wurden keine passenden Profile gefunden für die Suche nach '{0}'!" xml:space="preserve"> <data name="Es wurden keine passenden Profile gefunden für die Suche nach '{0}'!" xml:space="preserve">
<value>Es wurden keine passenden Profile gefunden für die Suche nach '{0}'!</value> <value>Es wurden keine passenden Profile gefunden für die Suche nach '{0}'!</value>
</data> </data>
<data name="Es wurden noch keine Profile für den aktuellen Benutzer konfiguriert." xml:space="preserve">
<value>Es wurden noch keine Profile für den aktuellen Benutzer konfiguriert.</value>
</data>
<data name="Es wurden weder Dokumente noch Daten gefunden für die Suche nach '{0}'!" xml:space="preserve"> <data name="Es wurden weder Dokumente noch Daten gefunden für die Suche nach '{0}'!" xml:space="preserve">
<value>Es wurden weder Dokumente noch Daten gefunden für die Suche nach '{0}'!</value> <value>Es wurden weder Dokumente noch Daten gefunden für die Suche nach '{0}'!</value>
</data> </data>
<data name="Fehler bei der Aktualisierung." xml:space="preserve">
<value>Fehler bei der Aktualisierung.</value>
</data>
<data name="Fehler beim Auswerten der Profile. Mehr Informationen im Log." xml:space="preserve"> <data name="Fehler beim Auswerten der Profile. Mehr Informationen im Log." xml:space="preserve">
<value>Fehler beim Auswerten der Profile. Mehr Informationen im Log.</value> <value>Fehler beim Auswerten der Profile. Mehr Informationen im Log.</value>
</data> </data>

View File

@ -82,6 +82,7 @@ Partial Class frmMain
Me.lblUser.Id = 1 Me.lblUser.Id = 1
Me.lblUser.ImageOptions.SvgImage = CType(resources.GetObject("lblUser.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage) Me.lblUser.ImageOptions.SvgImage = CType(resources.GetObject("lblUser.ImageOptions.SvgImage"), DevExpress.Utils.Svg.SvgImage)
Me.lblUser.Name = "lblUser" Me.lblUser.Name = "lblUser"
Me.lblUser.PaintStyle = DevExpress.XtraBars.BarItemPaintStyle.CaptionGlyph
' '
'lblVersion 'lblVersion
' '

View File

@ -5111,7 +5111,7 @@
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABU ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABU
CwAAAk1TRnQBSQFMAgEBBQEAATwBAQE8AQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo CwAAAk1TRnQBSQFMAgEBBQEAAUQBAQFEAQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AwABQAMAASADAAEBAQABCAYAAQgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@ -5171,6 +5171,9 @@
<data name="AlertControl1.AppearanceText.Font" type="System.Drawing.Font, System.Drawing"> <data name="AlertControl1.AppearanceText.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9.75pt</value> <value>Segoe UI, 9.75pt</value>
</data> </data>
<metadata name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>fr</value>
</metadata>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>

View File

@ -26,13 +26,36 @@ Public Class frmMain
Public Sub New() Public Sub New()
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu. ' Fügen Sie Initialisierungen nach dem InitializeComponent()-Aufruf hinzu.
Dim splash As New frmSplash() Dim splash As New frmSplash()
splash.ShowDialog() splash.ShowDialog()
Try
If USER_LANGUAGE <> "" Then
Dim cultureInfo As New System.Globalization.CultureInfo(USER_LANGUAGE)
cultureInfo.DateTimeFormat.ShortDatePattern = USER_DATE_FORMAT
Thread.CurrentThread.CurrentCulture = cultureInfo
Thread.CurrentThread.CurrentUICulture = cultureInfo
CultureInfo.DefaultThreadCurrentCulture = cultureInfo
CultureInfo.DefaultThreadCurrentUICulture = cultureInfo
End If
Catch ex As Exception
Logger.Error(ex)
End Try
' Dieser Aufruf ist für den Designer erforderlich.
InitializeComponent()
_DataASorDB = New ClassDataASorDB(modCurrent.LogConfig)
End Sub
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
ClassWindowLocation.LoadFormLocationSize(Me)
If ERROR_INIT = "FAILED DBCONNECTION" Or ERROR_INIT = "DATABASE" Then
frmConfig_Basic.ShowDialog()
End If
lblUser.Caption = USER_USERNAME
If ERROR_INIT <> "INVALID USER" Then If ERROR_INIT <> "INVALID USER" Then
'Dim Culture = CultureInfo.CreateSpecificCulture(USER_LANGUAGE) 'Dim Culture = CultureInfo.CreateSpecificCulture(USER_LANGUAGE)
@ -52,16 +75,6 @@ Public Class frmMain
End If End If
_DataASorDB = New ClassDataASorDB(modCurrent.LogConfig)
End Sub
Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
ClassWindowLocation.LoadFormLocationSize(Me)
If ERROR_INIT = "FAILED DBCONNECTION" Or ERROR_INIT = "DATABASE" Then
frmConfig_Basic.ShowDialog()
End If
lblUser.Caption = USER_USERNAME
If Database.DBInitialized = True Then If Database.DBInitialized = True Then
If ERROR_INIT <> "" Then If ERROR_INIT <> "" Then
If ERROR_INIT = "NO CLIENT" Then If ERROR_INIT = "NO CLIENT" Then
@ -122,8 +135,8 @@ Public Class frmMain
RefreshUI() RefreshUI()
Dim resources = New System.ComponentModel.ComponentResourceManager(Me.[GetType]()) 'Dim resources = New System.ComponentModel.ComponentResourceManager(Me.[GetType]())
GetChildren(Me).ToList().ForEach(Sub(c) resources.ApplyResources(c, c.Name)) 'GetChildren(Me).ToList().ForEach(Sub(c) resources.ApplyResources(c, c.Name))
End Sub End Sub
Private Function GetChildren(pControl As Control) As IEnumerable(Of Control) Private Function GetChildren(pControl As Control) As IEnumerable(Of Control)