Достаточно сложно ответить на этот вопрос авторитетно, не зная немного больше контекста, такого как тип файла, в который вы его помещаете, и какая именно ошибка в Visual Studio. Я полагаю, что вы получаете ошибку, такую как:
The type 'ControlTemplate' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built.
или, возможно:
Property 'Content' does not support values of type 'ControlTemplate'
Это вызвано тем, что шаблон размещен не в том месте - например, если вы создадите новый UserControl
(через «Добавить» -> «Новый элемент») и удалите содержимое файла и вставите его в свой код, тогда вы будете получить эту ошибку, поскольку xaml не имеет ссылок на ControlTemplate
.
Лучшее место для размещения вашего ControlTemplate
- это место, которое можно использовать повторно, например, новый «Словарь ресурсов» (снова добавьте его через «Добавить» -> «Новый элемент» -> «Словарь ресурсов Silverlight»), а затем поместите код внутрь. теги <ResourceDictionary ...></ResourceDictionary>
.
Если вы хотите поместить его в UserControl
(источник второй ошибки), вы должны добавить его в раздел Resources
этого элемента управления, например:
<UserControl.Resources>
<ControlTemplate x:Key="ImageButtonTemplate">
<Image Source="{TemplateBinding Content}" />
</ControlTemplate>
</UserControl.Resources>