Beste ,
Ik ben bezig met een dll te schrijven die een applicatie vertaald. De bedoeling was om alle namen van controls van een formulier in te lezen en op te slaan in een stack. Vervolgens wordt deze stack uitgelezen en worden alle controls vertaald. Ik gebruik hier resx files om de vertaling te laten plaatsvinden. Het gebruik van de stack is er om niet al de controls opnieuw te moeten gaan typen. Het belang van een dll is trouwens dat het werkt bij gelijk welke applicatie. Als voorbeeld ga ik juist maar de code zetten om de Buttons in te lezen in de stack en vervolgens worden deze weer eruitgehaald in de vertalingsprocedure.
Nu is mijn probleem dat mijn showInfo procedure niet naar behoren werkt want er wordt niets vertaald. Kan iemand mij hierbij raad geven ?
bedankt .
Ik ben bezig met een dll te schrijven die een applicatie vertaald. De bedoeling was om alle namen van controls van een formulier in te lezen en op te slaan in een stack. Vervolgens wordt deze stack uitgelezen en worden alle controls vertaald. Ik gebruik hier resx files om de vertaling te laten plaatsvinden. Het gebruik van de stack is er om niet al de controls opnieuw te moeten gaan typen. Het belang van een dll is trouwens dat het werkt bij gelijk welke applicatie. Als voorbeeld ga ik juist maar de code zetten om de Buttons in te lezen in de stack en vervolgens worden deze weer eruitgehaald in de vertalingsprocedure.
Code:
Private Function LoadButtonStack() As Stack
Dim buttonStack As New Stack
For Each ctl As Object In Me.Controls
If TypeOf ctl Is Button Then
buttonStack.Push(ctl)
End If
Next
Return buttonStack
End Function
Wanneer op het formulier het menu "English" wordt geselecteerd dan wordt devolgende code uitgevoerd
Private Sub EngelstoolstripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EngelstoolstripMenuItem.Click
_ci = New CultureInfo("en-US")
ShowInfo(LoadbuttonStack)
End Sub
Vervolgens wordt de ShowInfo procedure uitgevoerd met als argument de buttonstack
Private Sub ShowInfo(ByVal st As Stack)
For i As Integer = 1 To st.Count
CType(st.Peek,Button).Text=(_rm.GetString _ _
st.Pop.ToString, _ci)
i = i + 1
Next
de implements staan ook zoals ze moeten nl
Imports System.Globalization
Imports System.Threading
Imports System.Resources
Imports System.Reflection
Public Class Form1
Private _rm As ResourceManager
Private _ci As CultureInfo
Nu is mijn probleem dat mijn showInfo procedure niet naar behoren werkt want er wordt niets vertaald. Kan iemand mij hierbij raad geven ?
bedankt .
Laatst bewerkt door een moderator: