У меня есть сборка элементов управления Silverlight, называемая «MySilverlightControls». Несколько папок в этой сборке У меня есть класс, который расширяет столбец сетки стороннего поставщика, назовем его «MyImageColumn.cs».
Я также создал словарь ресурсов под названием Generic.xaml
, он находится в папке Themes
сборки. В этом словаре ресурсов я определил ControlTemplate с именем MyImageColumnTemplate :
<ControlTemplate x:Name="MyImageColumnTemplate" >
<Grid Margin="8,8,4,4" MaxHeight="32" MaxWidth="32">
<Grid.Resources>
<localGrid:StatusColumnImageConverter x:Key="ImageContentConverter"/>
</Grid.Resources>
<Border Margin="5,5,0,0" Background="Black" Opacity="0.15" CornerRadius="5" />
<Border Background="#FF6E6E6E" CornerRadius="4,4,4,4" Padding="4" Margin="0,0,5,5">
<Border Background="White" CornerRadius="2,2,2,2" Padding="3">
<Image Source="{Binding EditValue, Converter={StaticResource ImageContentConverter}}" Stretch="Uniform"/>
</Border>
</Border>
</Grid>
</ControlTemplate>
Мой вопрос: из MyImageColumn, как я могу программно ссылаться / загружать этот шаблон элемента управления, чтобы я мог назначить его свойству столбца? Я ожидал бы использовать синтаксис, подобный этому:
ControlTemplate ct = (ControlTemplate)Application.Current.Resources["MyImageColumnTemplate"];
но это всегда возвращает ноль. Когда я загружаю сборку в Reflector, я вижу, что там находится файл Generic.xaml
, имя ресурса - MySilverlightControls.g.resources
, а путь внутри него - themes/generic.xaml
.
.
Как именно я могу получить отдельные элементы в этом словаре ресурсов?