Я практикую C # с wpf, и я пытаюсь использовать форматирование шаблона.
В настоящее время у меня есть настраиваемая ссылка для связывания со списком:
<ComboBox Height="23" HorizontalAlignment="Left" Margin="177,28,0,0" Name="JoinedFiles_combobox" VerticalAlignment="Top" Width="164" Grid.Column="1" SelectionChanged="JoinedFiles_combobox_SelectionChanged">
<ComboBox.ItemTemplate>
<DataTemplate>
<Canvas Height="18">
<Image Name="ImageName" Height="16" Width="16" Canvas.Left="1" Canvas.Top="1"/>
<TextBlock Text="{Binding Name}" Canvas.Left="26" Canvas.Top="1" Width="120"/>
</Canvas>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding PictureID}" Value="0">
<Setter TargetName="ImageName" Property="Source" Value="Resources\0.png"/>
</DataTrigger>
<DataTrigger Binding="{Binding PictureID}" Value="1">
<Setter TargetName="ImageName" Property="Source" Value="Resources\1.png"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
Как я хочу другой комбобокскак это в другом файле xaml (другое окно), я пытаюсь поместить это как шаблон в мой файл app.xaml
.Это предотвратит копирование кода и упростит вещи.
Это то, что я написал в файле app.xaml
:
<Application.Resources>
<ResourceDictionary>
<ControlTemplate x:Key="CustomisedComboBox" TargetType="{x:Type ComboBox}">
<ItemTemplate>
<DataTemplate>
<Canvas Height="18">
<Image Name="ImageName" Height="16" Width="16" Canvas.Left="1" Canvas.Top="1"/>
<TextBlock Text="{Binding Name}" Canvas.Left="26" Canvas.Top="1" Width="120"/>
</Canvas>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding PictureID}" Value="0">
<Setter TargetName="ImageName" Property="Source" Value="Resources\0.png"/>
</DataTrigger>
<DataTrigger Binding="{Binding PictureID}" Value="1">
<Setter TargetName="ImageName" Property="Source" Value="Resources\1.png"/>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
</ItemTemplate>
</ControlTemplate>
</ResourceDictionary>
</Application.Resources>
Проблема в том, что он не может найти ItemTemplate в моем шаблоне управления.Как я могу дать ему этот шаблон элемента?