如何根据Xamarin.Forms xaml中的本地化语言显示Picker项

问题描述 投票:0回答:3

以下是使用xaml创建选择器的标准方法。

https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/picker/populating-itemssource

<Picker x:Name="picker"
        Title="Select a monkey"
        TitleColor="Red">
  <Picker.ItemsSource>
    <x:Array Type="{x:Type x:String}">
      <x:String>Baboon</x:String>
      <x:String>Capuchin Monkey</x:String>
      <x:String>Blue Monkey</x:String>
      <x:String>Squirrel Monkey</x:String>
      <x:String>Golden Lion Tamarin</x:String>
      <x:String>Howler Monkey</x:String>
      <x:String>Japanese Macaque</x:String>
    </x:Array>
  </Picker.ItemsSource>
</Picker>

而不是将硬编码文本用作“狒狒”,“卷尾猴”等。我想将本地化字符串用作扩展标记(x:Static)。

Use of static markup

Default language resource

Spanish language resource

我该如何实现?

xaml xamarin xamarin.forms picker itemsource
3个回答
0
投票

您可以将.resx绑定到ViewModel,然后为Picker绑定ViewModel来实现。

创建两个.resx文件,一个用于英语。


0
投票

一种解决方法是在实例化视图时将项目直接添加到选择器。


0
投票

@@ Junior Jiang-如果您想将其与视图模型绑定一起使用,MSFT的答案几乎涵盖了它。

© www.soinside.com 2019 - 2024. All rights reserved.