Cześć, właśnie zacząłem pisać aplikacje desktopową i wpadłem na pomysł aby zrobić aplikacje, którą każdy może przetłumaczyć na swój język. Do spolszczenia będą wszystkie kontrolki na formie (labelki, buttony, itd..), więc użyłem do tego pliku .xml, w którym gromadzę całe tłumaczenie, wygląda on tak.
<?xml version="1.0" encoding="utf-8"?>
<language value="pl">
<key id="LoginGroup" value="Logowanie" />
<key id="LoginLabel" value="Login />
<key id="PasswordLabel" value="Hasło" />
</language>
Użytkownik po odpaleniu aplikacji będzie mógł wybrać język i w tym momencie muszę jakoś mieć dostęp do wszystkich kontrolek na wszystkich formach. Próbowałem to zrobić przy użyciu refleksji na form ale wszystkie kontrolki są prywatne. Próbowałem też robić w ten sposób
var t = Type.GetType("Form1");
var form = (Form1)Activator.CreateInstance(t);
form.Controls.Find("LoginLabel", true)[0].Text = "razdwa";
ale niestety żadnych zmian na formach. Może macie pomysł w jaki inny sposób mogę zmieniać tekst na wszystkich kontrolkach w aplikacji? Z góry dzięki!