kei*_*en7 5 c# data-binding silverlight singleton xaml
我有一个曾经命中的单例将加载用户配置文件信息,我想让它成为我的SL3应用程序中的应用程序级资源,以便应用程序中的元素可以绑定到它.
我的实例的代码版本很简单
UserProfile x = UserProfile.GetInstance();
Run Code Online (Sandbox Code Playgroud)
我希望能够在app.xaml文件中的xaml中执行此操作,而在WPF中我们有ObjectDataProvider,所以我可以表达类似的东西
<ObjectDataProvider MethodName="GetInstance"
ObjectType="{x:Type local:UserProfile}" x:Key="CurrentUserProfile"/>
Run Code Online (Sandbox Code Playgroud)
我正在努力在SL3中找到正确的实现.
正如您所指出的,Silverlight 没有ObjectDataProvider. 如果您需要它提供的功能(例如延迟实例化),您将需要构建自己的类来处理它。如果您实际上不需要这些功能,那么只需在启动时添加一个实例即可UserProfile:App.Resources-
private void Application_Startup(object sender, StartupEventArgs e)
{
Resources.Add("CurrentUserProfile", UserProfile.GetInstance());
RootVisual = new MainPage();
}
Run Code Online (Sandbox Code Playgroud)