XAML UserControl网格元素未显示

时间:2010-02-14 18:26:09

标签: .net xaml

仍未解决:

我有以下问题:

我的用户控件如下所示:

<UserControl x:Class="UserControlSettings"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">    
<Grid x:Name="mainGrid" ShowGridLines="True">
    <Grid.ColumnDefinitions>
        <ColumnDefinition/>
        <ColumnDefinition/>
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="50" />
        <RowDefinition Height="50" />
        <RowDefinition Height="50" />
    </Grid.RowDefinitions>
    <TextBlock Grid.Row="0" Grid.Column="0" FontSize="20">Test</TextBlock>
    <Button Grid.Row="1" Grid.Column="0">Click</Button>
</Grid>

在设计器预览窗口中,它看起来很好。我看到了网格线,文本块和按钮。

当我将它嵌入窗口时,我只看到网格线,没有文字或按钮。 UserControl嵌入如下:

<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:my="clr-namespace:APP.NET"                    
Title="Window1" Height="300" Width="300">
<Grid>
    <my:UserControlSettings x:Name="controlSettings"/>
</Grid>
</Window>

感谢任何帮助。

3 个答案:

答案 0 :(得分:0)

仅供参考,您的行和列定义相反。如果只定义了一行,则尝试使用两行。

答案 1 :(得分:0)

除了混合的行/列设置之外,其他所有内容看起来都没问题但是没有看到其他UserControl的XAML我怀疑它的大小可能会占用窗口的整个300x300区域。由于controlSettingsPanel是添加到DockPanel的第一个项目,因此它将获得所需的空间。因此,如果它占据窗口的整个宽度,则不会显示另一个宽度。

答案 2 :(得分:0)

您的代码对我来说绝对合适。 这是所有的代码吗?你确定你没有在代码隐藏中操纵控件吗?

您发布的XAML没有任何问题,使其表现得像您所描述的那样。所以它可能受到其他一些代码的影响。