在WPF中布局的时候有几条原则:
1.不要设置面板容器的宽和高,这样便于面板容器能自适应窗口大小,如下图设置了宽度之后,Grid面板就不灵活了:
在这里插入图片描述
2.可以通过设置面板容器的Margin属性,来设置面板距离主界面边界的距离,如下图:
在这里插入图片描述

使用StackPanel:
1.新建WPF工程,删除容器,然后xaml文件做如下更改:

<Window x:Class="testStackPanel.MainWindow"
        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:testStackPanel"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525">
    <Border Background="Silver" BorderBrush="Gray" BorderThickness="10" CornerRadius="15" Name="Border1">
        <StackPanel   Margin="20,20,20,20" VerticalAlignment="Center" >
            <Label  Name="label" Content="Label-lalalalala"/>
            <Button Name="button1" Content="Button1" />
            <Button Name="button2" Content="Button2"   Margin =" 0,10,0,10" />
            <Button Name="button3" Content="Button3"  />
            <Button Name="button4" Content="Button4"  />            
        </StackPanel>
    </Border>
</Window>

效果如下:
在这里插入图片描述

如果要隐藏标题栏,并使界面背景透明化,可在里面添加Background=“Transparent” AllowsTransparency=“True” WindowStyle=“None”
效果如下图所示:
在这里插入图片描述
这个效果可用于登录界面的设计

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐