我正在尝试在理智的项目中创建包含多个资源字典的xamarin PCL项目。
所有资源字典都在项目XAML文件中为不同的屏幕定义了相同的键(这些键被称为动态资源),但每个资源字典中的值是不同的(目的是为特定的客户要求提供单独的资源字典。
能够使用
在App.Xaml的Code后面加载资源字典Current.Resources = new ResourceDictionary(); Resources.MergedWith = typeof(Sales); // Sales.xaml是一个资源字典。
现在我尝试从App.config传递资源字典的名称(使用PCLAppConfig Nuget包)并获取XAML文件的名称及其路径。
无法读取Code Behind中的XAML文件,就像我们在WPF中使用XAMLReader.Load一样
任何帮助都会非常感激。
答案 0 :(得分:1)
每个ResourceDictionary都有自己的类型,例如销售。
因此,如果您希望获取依赖于名称的类型,您可以通过反射获取类型。
var nameFromConfig = "Sale"; // Change to get from your config file
var type = Type.GetType(nameFromConfig);
Current.Resources = new ResourceDictionary();
Resources.MergedWith = type;