如何在tabcontrol中加载用户控件

时间:2015-03-13 13:13:14

标签: c# wpf xaml user-controls

我有一个用户控件(UserInfo.xaml),我想加载我的主标签控件。 我的目标是从选项卡控件中分离用户控件。

我似乎无法在WPF中执行此操作

我的用户控件如下所示。

<UserControl x:Class="AuthWiz.UserInfo"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
         mc:Ignorable="d" 
         d:DesignHeight="750" d:DesignWidth="1000">
<Grid>
    <Label Content="Request authorization for New User" HorizontalAlignment="Left" Margin="30,30,0,0" VerticalAlignment="Top" FontSize="20" FontWeight="Bold"/>
</Grid>

我想加载usercontrol&#34; userinfo&#34;在这个Tabcontrol中就像这样。

<UserControl
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
         xmlns:local="clr-namespace:AuthWiz;assembly=AuthWiz" x:Class="AuthWiz.TabControl" 
         mc:Ignorable="d" 
         d:DesignHeight="750" d:DesignWidth="1000">
<Grid>
    <TabControl HorizontalAlignment="Left" Height="677" Margin="10,63,0,0" VerticalAlignment="Top" Width="980" TabStripPlacement="Top">
        <TabItem Header="New User">
            <Grid Background="#FFE5E5E5">
                <local:UserInfo /> #this does not work.
            </Grid>
        </TabItem>
    </TabControl>
</Grid>

我收到以下错误

The tag 'UserInfo' does not exist in XML namespace 'clr-namespace:AuthWiz;assembly=AuthWiz'.

1 个答案:

答案 0 :(得分:2)

TabItem只能有一个子元素,因此以下内容不正确:

<TabItem Header="New User">
        <Grid Background="#FFE5E5E5"/>
        <local:UserInfo /> #this does not work.
    </TabItem>

因为您的TabItem有一个Grid,您的UserControl。要解决此问题,只需将UserControl放入网格中即可。

<TabItem Header="New User">
        <Grid Background="#FFE5E5E5">
           <local:UserInfo />
        </Grid>
    </TabItem>