Usercontrol不显示其内容

问题描述 投票:0回答:1

[当我尝试使用用户控件时,我偶然发现了这个奇怪的问题,出于某种原因,当我将用户控件添加到窗口时,它只显示我制作的边框,而内部不显示任何内容(无论是放置在边框还是网格内)

这是在设计器中的外观:

User Control Designer

这就是它在窗口中的外观(在设计器中和运行时):

Window Designer

如图所示,它既不显示按钮也不显示标签。

用户控制:

    <Grid Background="{x:Null}">
        <Border BorderBrush="#FAF9F9" CornerRadius="20" Background="#FAF9F9">
            <Border.Effect>
                <DropShadowEffect Opacity="0.3" ShadowDepth="2" Direction="270"/>
            </Border.Effect>
            <Grid Background="{x:Null}">
                <Label Content="Label" HorizontalAlignment="Left" VerticalContentAlignment="Center" Margin="10,280,0,0" VerticalAlignment="Top" Height="47" Width="428" FontSize="25"/>
                <Button Content="+" HorizontalAlignment="Left" Margin="443,280,0,0" VerticalAlignment="Top" Width="47" Height="47" HorizontalContentAlignment="Center" Foreground="White" FontSize="40" FontWeight="Bold" RenderTransformOrigin="0.5,0.5" BorderBrush="{x:Null}">
                    <Button.Effect>
                        <DropShadowEffect Opacity="0.3" ShadowDepth="2" Direction="270"/>
                    </Button.Effect>
                    <Button.Template >
                        <ControlTemplate TargetType="Button" >
                            <Grid >
                                <Path Stretch="Uniform" UseLayoutRounding="False" Fill="#FFEA1E27">
                                    <Path.Data>
                                        <EllipseGeometry RadiusX="1" RadiusY="1"/>
                                    </Path.Data>
                                </Path>
                                <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
                            </Grid>
                        </ControlTemplate>
                    </Button.Template>
                </Button>
            </Grid>
        </Border>
    </Grid>
c# wpf user-controls
1个回答
0
投票

看起来控件的实际大小小于设计大小。因此,标签和按钮在控件的可见部分之外。

尝试一下

<Grid Background="{x:Null}">
    <Border BorderBrush="#FAF9F9" CornerRadius="20" Background="#FAF9F9">
        <Border.Effect>
            <DropShadowEffect Opacity="0.3" ShadowDepth="2" Direction="270"/>
        </Border.Effect>
        <Grid Background="{x:Null}">
            <Label Content="Label" HorizontalAlignment="Left" Margin="10" VerticalContentAlignment="Center" VerticalAlignment="Bottom" Height="47" Width="428" FontSize="25"/>
            <Button Content="+" HorizontalAlignment="Right" Margin="10" VerticalAlignment="Bottom" Width="47" Height="47" HorizontalContentAlignment="Center" Foreground="White" FontSize="40" FontWeight="Bold" RenderTransformOrigin="0.5,0.5" BorderBrush="{x:Null}">
                <Button.Effect>
                    <DropShadowEffect Opacity="0.3" ShadowDepth="2" Direction="270"/>
                </Button.Effect>
                <Button.Template >
                    <ControlTemplate TargetType="Button" >
                        <Grid >
                            <Path Stretch="Uniform" UseLayoutRounding="False" Fill="#FFEA1E27">
                                <Path.Data>
                                    <EllipseGeometry RadiusX="1" RadiusY="1"/>
                                </Path.Data>
                            </Path>
                            <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center"/>
                        </Grid>
                    </ControlTemplate>
                </Button.Template>
            </Button>
        </Grid>
    </Border>
</Grid>
© www.soinside.com 2019 - 2024. All rights reserved.