Estoy seguro de que esta pregunta o sus derivados se han pedido miles de veces, pero no he podido encontrar nada que me haya ayudado a resolver el problema, por lo que estoy preguntando. No dudes en dirigirme al duplicado que estoy seguro existe pero no puedo encontrar. Aparentemente no soy tan bueno con las palabras clave.Plantilla de control personalizado de WPF no aplicada
Tengo un control personalizado, tiene su propio diccionario de recursos utilizado solo para definir la plantilla de control. Este diccionario se fusiona en Generic.xaml.
El problema es que cuando este control aparece en la interfaz de usuario, no tiene nada dentro. Usé Snoop para descubrir esto. El control está en la interfaz de usuario, pero está completamente vacío.
A continuación encontrará los elementos que creo que son responsables del problema. Cualquier ayuda o consejo que pueda ofrecer es muy apreciada.
Las partes pertinentes de mi estructura de carpetas son así:
BasicTemplate.xaml:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WPFSpecBuilder.Layouts.Templates">
<Style TargetType="{x:Type local:BasicTemplate}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:BasicTemplate}">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<Grid>
<TextBlock Text="This is a basic template." />
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
Generic.xaml
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Layouts/Templates/XAML/BasicTemplate.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
que avanzaría por el principio de exclusión: En primer lugar afirma que su definición de estilo no es parte de la problema. Por lo tanto, selecciónalo de ResourceDictionary anidado y pégalo en Generic.xaml (que espero que hagas referencia en App.xaml). Después de que muestre el efecto deseado, pruebe lo que Steve propone (afirmando que su ruta relativa está configurada correctamente) –