Solución:
Encontré la respuesta en Localizing XAML
Tuve que agregar el texto El valor es: {0} al archivo de recursos.
Necesitaba agregar un IMarkupExtension para la traducción. Agregué la clase al mismo espacio de nombres que el archivo de recursos.
[ContentProperty("Text")]
public class TranslateExtension : IMarkupExtension
{
private readonly CultureInfo _ci;
static readonly Lazy<ResourceManager> ResMgr = new Lazy<ResourceManager>(
() => new ResourceManager(typeof(AppResources).FullName, typeof(TranslateExtension).GetTypeInfo().Assembly));
public string Text { get; set; }
public TranslateExtension()
{
if (Device.RuntimePlatform == Device.iOS || Device.RuntimePlatform == Device.Android)
{
_ci = DependencyService.Get<ILocalize>().GetCurrentCultureInfo();
}
}
public object ProvideValue(IServiceProvider serviceProvider)
{
if (Text == null)
return string.Empty;
return ResMgr.Value.GetString(Text, _ci) ?? Text;
}
}
y utilícelo como:
<Label Text="{Binding Value, StringFormat={resources:Translate LabelTextTheValueIs}}" />
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)