Звучит очень просто и убивает меня!
Я пытаюсь использовать один пользовательский элемент управления со стилями из ResourceDictionary внешней сборки, но я получаю исключение во время выполнения.
Вот как воспроизвести:
- Создать библиотеку классов silverlight с именем MyControls.dll
Создайте пользовательский контроль SuperControl:
<UserControl.Resources>
<ResourceDictionary Source="MyControls;component/Styles.xaml" x:Key="Styles" />
</UserControl.Resources>
<Grid x:Name="LayoutRoot" Background="White">
<TextBlock Style="{StaticResource MyStyle}" Text="Hello"/>
</Grid>
Создайте ResourceDictionary Styles.xaml и добавьте:
<Style x:Key="MyStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="15"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="TextWrapping" Value="Wrap"/>
<Setter Property="Margin" Value="0,15,0,4"/>
<Setter Property="HorizontalAlignment" Value="Left"/>
</Style>
Создайте приложение Silverlight под названием SL и добавьте Mycontrols в качестве ссылки
В MainPage.xaml Grid добавьте:
<MyControls:SuperControl />
Он будет скомпилирован, но при запуске приложения вы получите "Не удалось присвоить свойству 'System.Windows.ResourceDictionary.Source'. [Строка: 10 Позиция: 36]"
Я добавил это в приложение App.xaml
<ResourceDictionary Source="/MyControls;component/Styles.xaml" />
Та же ошибка ...: (
Есть мысли?