首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何实现.NET毛伊岛的本地化

如何实现.NET毛伊岛的本地化
EN

Stack Overflow用户
提问于 2022-03-01 22:14:42
回答 5查看 6.1K关注 0票数 7

我无法找到实现毛伊岛应用程序本地化的任何方向。我读过一些关于本地化Xamarin应用程序的信息,但是即使在进行了大量的网络搜索之后,我也无法将其翻译到毛伊岛。

有人能给我指一条我可能错过的推荐信吗?

EN

回答 5

Stack Overflow用户

发布于 2022-04-08 12:01:18

尝试这个-创建标准资源

  • “添加新项目/资源文件”>MauiApp1 1/Resources
  • 设置名称"AppRes.resx“
  • 创建第二郎"AppRes.ru.resx“
  • 添加字符串

如何在XAML中使用

代码语言:javascript
复制
[...] xmlns:res="clr-namespace:MauiApp1.Resources" 

<Button Text="{x:Static res:AppRes.Title}" />

使用代码

代码语言:javascript
复制
//get lang as "en"
string lang = Thread.CurrentThread.CurrentCulture.TwoLetterISOLanguageName;

//toggle lang
if(lang == "ru")
{
    Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("ru-RU");
    Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("ru-RU");
}
else
{
    Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
    Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US");
}

//get translated title
//using MauiApp1.Resources;
string title = AppRes.Title

更新只需重置应用程序

代码语言:javascript
复制
(App.Current as App).MainPage = new AppShell();

就这样

票数 8
EN

Stack Overflow用户

发布于 2022-07-13 09:03:06

使用Microsoft扩展本地化软件包

为LocalizeExtension创建类。这是你给出的AppStrings ResourceFileName

代码语言:javascript
复制
[ContentProperty(nameof(Key))]
public class LocalizeExtension : IMarkupExtension
{
    IStringLocalizer<AppStrings> _localizer;

    public string Key { get; set; } = string.Empty;

    public LocalizeExtension()
    {
        _localizer = ServiceHelper.GetService<IStringLocalizer<AppStrings>>();
    }

    public object ProvideValue(IServiceProvider serviceProvider)
    {
        string localizedText = _localizer[Key];
        return localizedText;
    }

    object IMarkupExtension.ProvideValue(IServiceProvider serviceProvider) => ProvideValue(serviceProvider);
}

XAML

代码语言:javascript
复制
    <Button Text="{local:Localize Key}"/>

查看此SampleApp以获得更多详细信息LocalizationDemo

票数 4
EN

Stack Overflow用户

发布于 2022-03-13 11:56:54

查看.NET .NET 6 "Podcast应用程序“的MAUI参考应用程序,您可以在这里找到:https://github.com/microsoft/dotnet-podcasts

它使用包含UI可本地化字符串的资源文件。

也许这对你有帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71315229

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档