如何将静态类中的数据绑定到Xaml

时间:2011-01-13 10:05:28

标签: silverlight mvvm silverlight-4.0

我有一个静态类,其中一个属性定义了资源管理器。例如。

public static class MyClass
{
public static MyResourceManager {get;set;}
}

我想将密钥从资源管理器绑定到XAML。我正在使用Silverlight 4和MVVM模式。

如果我这样做:

<Button Content="{Binding LocalResource.Refresh}"/>

其中LocalResource在我的视图模型中定义如下:

public object LocalResource {
get
{
return MyClass.MyResourceManager;
}
}

任何人都可以提出更好的方法。我已经使类静态,因为动态加载了资源文件。我正在将它加载到bootsrapper中,并且必须在我的所有模块中使用它。

1 个答案:

答案 0 :(得分:2)

如何为您的应用程序仅为您的资源管理器实现一次这样的实现:

<Application xmlns:myNS="clr-namespace:MyNamespace;assembly=MyAssembly" ...>
    <Application.Resources>
        <myNS:MyResourceManager x:Key="MyResources" />
    </Application.Resources>
</Application>

然后你可以像普通的WPF资源一样使用它:

<Button Content="{Binding Source={StaticResource MyResources}, Path=Refresh}" />