如果我使用以下XAML
,我会收到一条消息,说明属性内容设置了多次。
<telerik:RadTabItem Header="B" x:Name="A">
<uc:List x:Name="GB" DataContext="{Binding List}" />
<uc:Grid x:Name="Grid" DataContext="{Binding Numbers}" />
</telerik:RadTabItem>
我可以用StackPanel
包围它来解决这个问题。
还有其他解决方案吗?
答案 0 :(得分:2)
许多WPF FrameworkElements
只能有一个子对象。像StackPanel
,Grid
,WrapPanel
等布局控件接受一组子对象。 XAML
中定义的子对象被分配给此控件的Content
属性。它只接受一个对象而不是一个对象集合,因此你的错误信息(内容设置不止一次)
对于RadTabItem
,你不知道如何布局你要求它显示的两个控件。您列出的List
和Grid
子控件是否应并排显示,上下,重叠等?
这就是为什么你需要将两个控件分组到一个容器中,该容器指定集合中多个控件的布局,例如StackPanel
,Grid
,WrapPanel`等。