<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>
Và đây là trong các tập tin khác ...Làm cách nào để có thể lồng các yếu tố XAML tùy chỉnh?
<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>
Và ...
public partial class ElementType : System.Windows.Controls.Grid { }
Tất cả mọi thứ hoạt động tốt, ngoại trừ yếu tố thứ hai.
Tôi gặp lỗi:
Không thể đặt giá trị thuộc tính Tên 'SecondElementName' trên phần tử 'ElementType'. 'ElementType' nằm trong phạm vi phần tử 'ElementType', đã có tên được đăng ký khi được xác định trong phạm vi khác.
Lưới tùy chỉnh được xác định chính xác. Mã sẽ biên dịch và chạy nếu tôi đưa ra tài sản ---
x:Name="SecondElementName"
--- trong Window1.XAML
gì đang gây ra lỗi này? Làm thế nào để tôi có được nó? Tôi cần phải làm tổ một trong những lưới tùy chỉnh bên trong một trong những khác, và tôi cần tên trên cả hai người trong số họ vì vậy tôi có thể ràng buộc họ để tách dữ liệu.
Xin cảm ơn trước.
Điều này cũng thú vị, nhưng nó vẫn không cho phép tôi cung cấp cho các đối tượng ElementType cha mẹ và con các tên khác nhau. Có ai biết làm thế nào tôi có thể nhận được chúng được đặt tên riêng biệt từ mỗi khác? – Giffyguy
Ồ vâng, xin lỗi ... Tôi sẽ hoàn thành câu trả lời ở trên. – Ludovic