c# – WPF .NET4.0重新使用UserControl的同一个实例

前端之家收集整理的这篇文章主要介绍了c# – WPF .NET4.0重新使用UserControl的同一个实例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想显示相同的用户控制实例两次.我试着做以下:
  1. <UserControl.Resources>
  2. <Views:MyControl View x:Key="_uc1" MinHeight="300"/>
  3. </UserControl.Resources>

并尝试在TabControl中使用它:

  1. <TabControl Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="3" >
  2. <TabItem >
  3. <TabItem.Header>
  4. <TextBlock Text="Header1" FontWeight="13"/>
  5. </TabItem.Header>
  6.  
  7. <StackPanel >
  8. <ContentControl Content="{StaticResource _uc1}"/>
  9. </StackPanel>
  10. </TabItem>
  11. <TabItem >
  12. <TabItem.Header>
  13. <TextBlock Text="Header2" FontWeight="13"/>
  14. </TabItem.Header>
  15.  
  16. <StackPanel MinHeight="600" >
  17. <ContentControl Content="{StaticResource _uc1}"/>
  18. </StackPanel>
  19. </TabItem>
  20. </TabControl>

我收到错误信息:
“{”指定的元素已经是另一个元素的逻辑小孩.首先断开连接.“}”

我试图实现什么?

谢谢,

解决方法

不是.如错误所示,给定对象可能只能在给定的逻辑树中存在一次.这有助于确保逻辑树保持树状.

如果您正在使用MVVM模式(或者通常使用DataBinding),则可以将两个不同的UserControl绑定到同一个后台viewmodel / data,以使控件的行为相同并在相同的状态表示中操作.不过,您仍然需要两个不同的控件.

猜你在找的C#相关文章