我有一个自定义控件,我需要在其中使用特定于平台的代码。我在每个平台上的IPlatformInitializer
中注册了特定于平台的实现。我可以通过IUnityContainer
解析实例。但我没有在我的自定义控件中引用unity容器。框架开发人员在我的自定义控件中解决已注册实例的设计方法是什么?我在XAML
创建了我的控件。
采用Xamarin.Forms
的方法我可以做到:
DependencyService.Get<ISomeManager>();
来自申请的任何地方。
提前致谢。
答案 0 :(得分:0)
您需要实现服务定位器模式才能访问自定义控件中的容器。您可以将Application.Current转换为PrismApplication并使用其中的Container属性,或者为容器公开新的静态属性。