gpt4 book ai didi

xamarin - Mvvmcross:与 MvxLang 的文本格式绑定(bind)

转载 作者:行者123 更新时间:2023-12-02 12:07:17 24 4
gpt4 key购买 nike

我正在构建一个 native Xamarin 应用程序,并使用 Mvvmcross 来完成它。这是一个非常好的工具,但我仍在学习它的工作原理。

我在文档中发现您可以通过绑定(bind)执行以下操作:

local:MvxBind="Text Format('Line: {0}', Line.Name)"

在这里,您将 Testclass.Name 变量与格式绑定(bind),因此结果将是

Line: TestName

现在我想做同样的事情,但还要计算 Line:翻译。因此,通常对于翻译,您会执行以下操作。

local:MvxLang="Text Line_Label"

所以我的想法是做这样的事情:

local:MvxLang="Text Format('{0}{1}', Line_Label, Line.Name)"

但它不是这样工作的。有人知道这是否可能以及如何实现吗?

最佳答案

通过 local:MvxBind 使用西藏绑定(bind)。我们假设您有:

  1. BaseViewModel.cs

    public abstract class BaseViewModel : MvxViewModel
    {
    public IMvxLanguageBinder TextSource
    {
    get
    {
    return new MvxLanguageBinder(
    Constants.GeneralNamespace,
    GetType().Name);
    }
    }
    }
  2. MainViewModel.cs继承自BaseViewModel,带有字符串属性Name:

    public string Name => "Radek";
  3. TextProviderBuilder 就像 Stuart 的 N+1 天(第 21 号)https://www.youtube.com/watch?v=VkxHtbJ_Tlk

  4. 带有“MyLabel”键的 JSON 翻译文件

    {
    "MyLabel" : "Your name:"
    }

答案:然后Android布局axml文件将包含绑定(bind)

    local:MvxBind="Text Language(TextSource,'MyLabel') + ' ' + Name; Click NextCommand"

我不知道如何使用 local:MvxLang 执行此操作,但上面的代码可以完成此任务:)

关于xamarin - Mvvmcross:与 MvxLang 的文本格式绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46491167/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com