Я нашел приемлемый ответ, относящийся к предложению Эндрю в комментариях.
По сути, я создаю класс stati c, называемый translations, и задаю свойства stati c для значений переводов в пути. мое приложение получает их.
namespace MyApp.Utilities
{
private static string _myAwesomeString;
public static string MyAwesomeString
{
get
{
if (string.IsNullOrEmpty(_myAwesomeString))
{
MyAwesomeString= GetTranslation("MyAwesomeResource");
}
return _myAwesomeString;
}
private set => _myAwesomeString = value;
}
}
И затем ссылка в xaml выглядит так:
<Label Text="{x:Static utils:Translations.MyAwesomeString}"></Label>
Использование методов доступа get / set гарантирует, что вызов GetTranslation будет выполняться только один раз, эффективно давая мне эффективный в памяти словарный доступ к ресурсам, которые используются на нескольких экранах.
Мне все еще нужно иметь свойства в классе, что не идеально, но, по крайней мере, так они все находятся в одном месте и не загромождать модели. Если кто-нибудь знает решение, в котором мне не нужно сохранять фактические свойства, пожалуйста, дайте мне знать!