我的项目中有一个名为 CustomStyles.xaml 的ResourceDictionary。它位于名为RD的子目录中,因此其位置为 RD / CustomStyles.xaml 。
我的问题如下:我有一个名为 CustomGroupBox.vb 的仅限类文件,而在New()中,我想访问来自的ResourceDictionary。
我怎么能这样做,因为我没有CustomGroupBox.vb的相应XAML?
P.S。我想要注意的是CustomStyles.xaml的 BuildAction 资源而不是内容,因此它与项目一起编译,它不输出到构建目录(\ bin)。因此以下不起作用......
Me.Resources.Source = New Uri("RD\CustomStyles.xaml")
答案 0 :(得分:1)
似乎您需要使用Application.Current.Resources来查找资源,假设资源字典是在应用程序级别定义的。例如:
YourControl.Style = CType(Application.Current.Resources("OneOfYourStyles"), Style)
编辑:对于程序集中的资源而不是应用程序,您可以使用包URI语法(link)来访问资源。它可能看起来像这样:
Dim u as Uri = New Uri("/" + Me.GetType().Assembly.GetName().Name + ";RD/CustomStyles.xaml"
答案 1 :(得分:0)
您可以从程序集中提取资源。
此blog帖子会告诉你如何。