Es gibt viele Fragen zu diesem Thema, aber immer noch keine Lösung für uns lesenLokalisierung via resx in winforms
Ich habe all meine Ressourcen in einem separaten Projekt, und dieses Projekt hat einen Ressourcenordner mit 3 Sprachen in ihm.
In jeder Steuer ich im Konstruktor habe einen Aufruf an InitializeLanguage() wo ich den richtigen Text für die richtige Sprache wie folgt festgelegt:
public void InitializeLanguage()
{
bOK.Text = Lastenboek.Language.Ok;
cbSM.Text = Lastenboek.Language.SamenvattendeMeetstaat;
cbDM.Text = Lastenboek.Language.DetailMeetstaat;
cbDMHeadingStyles.Text = Lastenboek.Language.KopStijlen;
cbExportArtikelsZonderMeetstaat.Text = Lastenboek.Language.ArtikelsZonderMeetstaat;
cbSMHeadingStyles.Text = Lastenboek.Language.KopStijlen;
cbRamingsPrijs.Text = Lastenboek.Language.Ramingsprijs;
cbBeknopteOmschrijving.Text = Lastenboek.Language.BeknopteOmschrijving;
cbFaseSM.Text = Lastenboek.Language.GesplitstOpFase;
groupBox3.Text = Lastenboek.Language.Filter;
label2.Text = Lastenboek.Language.Tot;
label1.Text = Lastenboek.Language.DatumVan;
gbPrijzen.Text = Lastenboek.Language.Prijzen;
label3.Text = Lastenboek.Language.Account;
cbTotaalSM.Text = Lastenboek.Language.Totaal;
groupBox4.Text = Lastenboek.Language.Template;
label4.Text = Lastenboek.Language.Layout;
Text = Lastenboek.Language.ExporteerMeetstaat;
}
Alles funktioniert gut, aber jetzt manchmal das Etikett ist zu klein für den Text in anderen Sprachen. Gibt es eine gute Möglichkeit, die Sprache zur Designzeit zu ändern und die Dimensionen für verschiedene Sprachen zu ändern?
Haben Sie die Label.Autosize-Eigenschaft versucht? [Label.AutoSize-Eigenschaft] (https://msdn.microsoft.com/en-us/library/system.windows.forms.label.autosize (v = vs.110) .aspx) – rmjoia
sie sind alle auf Autosize aber eingestellt Sie überlappen andere Steuerelemente – Sennevds
Ich nehme an, Sie können immer die TextBox.Text.Length -Eigenschaft und passen Sie die Breite .. – rmjoia