自定义控件中的WPF扩展工具包控件没有拉到窗体?

时间:2016-11-12 15:34:28

标签: c# .net wpf xaml xceed

我正在使用Xceed Extended WPF Toolkit进行整数向下控制。我已经通过Nuget安装了这个。

我已将其集成到自定义控件中,其中包含其他普通文本框和按钮等。

然后我将这个自定义控件放在Window上的选项卡控件中。除了显示为空框的IntegerUpDown之外,所有内容都正确显示。 (在设计中查看自定义控件时很好)

我已将命名空间添加到控件和窗口中,因此我不确定问题是什么。一切都在一个项目中,所以我不认为参考是一个问题。

关于我可能遗失的任何想法?

控制XAML:

<Label Grid.Row="3" Content="Quantity of Tickets:" VerticalAlignment="Center"></Label>
<xctk:IntegerUpDown Grid.Row="3" Grid.Column="1" Name="numTickets"></xctk:IntegerUpDown>

表格XAML:

<TabItem Header="New Booking">
      <Grid Background="#FFE5E5E5">
           <btc:NewBooking></btc:NewBooking>
      </Grid>
 </TabItem>

谢谢, 莱恩

1 个答案:

答案 0 :(得分:0)

这是MCVE

<强>主窗口:

<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:local="clr-namespace:WpfApplication8"
    x:Class="WpfApplication8.MainWindow"
    mc:Ignorable="d"
    Title="MainWindow" Height="300" Width="300">
<Grid>
    <TabControl x:Name="tabControl" Margin="0">
        <TabItem Header="TabItem 1">
            <Grid Background="#FFE5E5E5">
                <local:UserControl1></local:UserControl1>
            </Grid>
        </TabItem>
        <TabItem Header="TabItem 2">
            <Grid Background="#FFE5E5E5"/>
        </TabItem>
    </TabControl>
</Grid>

<强>用户控件:

<UserControl x:Class="WpfApplication8.UserControl1"
         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:xctk="http://schemas.xceed.com/wpf/xaml/toolkit" 
         xmlns:local="clr-namespace:WpfApplication8"
         mc:Ignorable="d" 
         d:DesignHeight="300" d:DesignWidth="300">
<Grid>
    <StackPanel>
        <Label Grid.Row="3" Content="Quantity of Tickets:" VerticalAlignment="Center"></Label>
        <xctk:IntegerUpDown Grid.Row="3" Grid.Column="1" Name="numTickets"></xctk:IntegerUpDown>
    </StackPanel>
</Grid>

enter image description here

MainWindowUserControl在项目结构中处于同一级别:

enter image description here

编辑:还有一件事,请确保UserControl完全包含MainWindow并且您没有这样的内容:

enter image description here

这会导致IntegerUpDown看起来像一个空盒子,就像你描述的那样。