1

我正在尝试将ControlXAML 中根元素的样式设置StaticResource为 external 中定义的样式ResourceDictionary,但是我收到错误消息:

The resource "MyControlStyle" could not be resolved.

<UserControl
    ...
    >

    <UserControl.Resources>
        <ResourceDictionary Source="..\Styles\MyStyles.xaml" />
    </UserControl.Resources>

    <UserControl.Style>
        <StaticResource ResourceKey="MyControlStyle"/>
   </UserControl.Style>

</UserControl>

除了在使用我的控件的 XAML 文件中设置样式之外,如何实现呢?我希望能够从内部设置样式,UserControl以便我可以在设计器中看到样式的效果UserControl

4

1 回答 1

1

您正在尝试从用户控件的属性(在本例中为 Style)引用在控件内部定义的 ResourceDictionary。资源作为气泡工作,如果控件需要资源,则在其容器的资源中搜索,如果找不到,则在容器资源的父级中搜索,如果找不到,则在其父级中搜索....直到应用程序资源,如果在系统资源中找不到。

如果要将资源应用于用户控件,则应将其放在应用程序资源中(在 App.xaml 文件中)。试试这个。

于 2012-09-21T17:25:51.937 回答