<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>
А это в других файлах...
<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>
А также ...
public partial class ElementType : System.Windows.Controls.Grid { }
Все работает нормально, кроме второго элемента.
Я получаю сообщение об ошибке:
Невозможно установить значение атрибута Name 'SecondElementName' для элемента 'ElementType'. 'ElementType' находится в области действия элемента 'ElementType', для которого уже было зарегистрировано имя, когда он был определен в другой области.
Пользовательские сетки определены правильно. Код скомпилируется и запустится, если я удалю свойство ---
x:Name="SecondElementName"
--- в Window1.xaml
Что вызывает эту ошибку? Как мне обойти это? Мне нужно вложить одну из этих настраиваемых сеток в другую, и мне нужны имена для обеих из них, чтобы я мог связать их с отдельными данными.
Заранее спасибо.