在XAML节点内加载UserControl的问题

时间:2010-05-06 07:50:43

标签: wpf xaml user-controls toolbar

我有一个单独的程序集,我在其中定义了几个标准UserControl。其中一些是标准工具栏,如下所示:

<UserControl x:Class="XXX.ToolbarFullMaintenance"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
>
<ToolBar
    Style="{DynamicResource ToolbarMainStyle}"
>
/* MY BUTTONS */
</ToolBar>
</UserControl>

现在,我会在我的窗口上的ToolBarTray中插入此工具栏。我试着这样做:

<ToolBarTray>
  <toolbars:ToolbarFullMaintenance
       Band="1"
       BandIndex="1"
       Name="mainToolbar" />
</ToolBarTray>

但不起作用......“mainToolbar”看起来像UserControl而不像ToolBar。 我该怎么办?

1 个答案:

答案 0 :(得分:2)

您让ToolBar成为自定义UserControl的孩子,因此ToolBarTrayToolBar一无所知。您可以将ToolbarFullMaintenance的基类更改为ToolBar而不是UserControl,从而纠正您的设计:

<ToolBar x:Class="XXX.ToolbarFullMaintenance"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         Style="{DynamicResource ToolbarMainStyle}">

     /* MY BUTTONS */

</ToolBar>