MohannadNajjar Ответов: 1

Преобразование интерфейса программы в другой языковой интерфейс VB.NET


ПРИВЕТ ,,,

Что не так в коде для преобразования интерфейса программы в интерфейс другого языка ??? В Visual Basic .NET (Visual Studio 2019)

<pre>Imports System.Globalization
Imports System.ComponentModel
Public Class Form1
    Private Sub ArButton_Click(sender As Object, e As EventArgs) Handles ArButton.Click
        Languages.changelanguge("ar")
    End Sub
    Private Sub EnButton_Click(sender As Object, e As EventArgs) Handles EnButton.Click
        Languages.changelanguge("en")
    End Sub
End Class
Public Module Languages
    Public Sub changelanguge(ByVal languge As String)
        For Each obj As Control In Form1.Controls
            Dim lang As ComponentResourceManager = New ComponentResourceManager(GetType(Form1))
            lang.ApplyResources(obj, obj.Name, New CultureInfo(languge))
        Next
    End Sub
End Module


Спасибо

Что я уже пробовал:

перевести интерфейс программы на другой язык интерфейса ??? В Visual Basic .NET (Visual Studio 2019)

1 Ответов

Рейтинг:
1

RickZeeland

Мне кажется, что с помощью онлайн-конвертера он может быть преобразован в C#.
Преобразовать VB.NET в/из C# онлайн - конвертер кодов Roslyn[^]

using System;
using System.Globalization;

public partial class Form1
{
    private void ArButton_Click(object sender, EventArgs e)
    {
        Languages.changelanguge("ar");
    }
    private void EnButton_Click(object sender, EventArgs e)
    {
        Languages.changelanguge("en");
    }
}

public static partial class Languages
{
    public static void changelanguge(string languge)
    {
        foreach (Control obj in Form1.Controls)
        {
            var lang = new ComponentResourceManager(typeof(Form1));
            lang.ApplyResources(obj, obj.Name, new CultureInfo(languge));
        }
    }
}