<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApplication1"
Title="Window1">
<Grid>
<local:ElementType x:Name="FirstElementName">
<local:ElementType x:Name="SecondElementName" Grid.Column="1" Grid.Row="1" />
</local:ElementType>
</Grid>
</Window>
Y esto es en otros archivos ...¿Cómo puedo anidar elementos XAML personalizados?
<Grid x:Name="InternalElementName" x:Class="WpfApplication1.ElementType"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApplication1">
</Grid>
Y ...
public partial class ElementType : System.Windows.Controls.Grid { }
todo funciona bien, excepto el segundo elemento.
Aparece el error:
No se puede establecer el valor del atributo de nombre 'SecondElementName' en el elemento 'ElementType'. 'ElementType' está bajo el alcance del elemento 'ElementType', que ya tenía un nombre registrado cuando se definió en otro ámbito.
Las cuadrículas personalizadas se definen correctamente. El código se compila y ejecuta si tomo a cabo la propiedad ---
x:Name="SecondElementName"
--- en Window1.xaml
¿Qué está causando este error? ¿Cómo puedo evitarlo? Necesito anidar una de estas cuadrículas personalizadas dentro de la otra, y necesito nombres en ambas para poder vincularlas a datos separados.
Gracias de antemano.
Esto también es interesante, pero todavía no me permite dar nombres diferentes a los objetos ElementType padre e hijo. ¿Alguien sabe cómo puedo conseguir que se nombren por separado el uno del otro? – Giffyguy
Oh, sí, lo siento ... Completaré mi respuesta anterior. – Ludovic