Я начинаю с Windows 8 C # Образец пользовательского и пользовательского элементов управления XAML и перемещаю файлы
Themes/Generic.xaml
BasicCustomControl.cs
BasicUserControl.xaml
BasicUserControl.xaml.cs
ImageWithLabelControl.cs
в библиотеку классов Metro с именем Controls
, ссылаясь на нее в UserAndCustomControls
спроектировать и исправить local:...
ссылки на xmlns:local="using:Controls"
.Это прекрасно работает.
НО, если создать словарь ресурсов "Style.xaml"
в библиотеке классов с
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Controls">
<Color x:Key="ColorBackground">Red</Color>
</ResourceDictionary>
и включить в ScenarioList.xaml
файл
<Page.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Controls;component/Style.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Page.Resources>
я получаю ошибку времени выполнения
XamlParseException
Failed to assign to property 'Windows.UI.Xaml.ResourceDictionary.Source'.
, если я пытаюсь применить цвет к сетке
<Grid>
<Grid.Background>
<SolidColorBrush Color="{StaticResource ColorBackground}" />
</Grid.Background>
<ListBox x:Name="Scenarios" ...
[...]
</Grid>
[Q] Вопрос в том, как мнеправильно объявлять, ссылаться и использовать внешний стиль в приложении Metro?Моя идея заключается в создании повторно используемых элементов управления и общих стилей в виде одного файла DLL.