【1】WPF界面开发入门—— 图书馆程序:登录界面设计

文章目录

  • [1 C# wpf 创建工程](# wpf 创建工程)
  • [2 添加界面代码 及运行效果](#2 添加界面代码 及运行效果)
  • [3 重点代码解释](#3 重点代码解释)

P11 图书馆程序:登录界面设计

1 C# wpf 创建工程


MainWindow.xaml 主界面如下

MainWindow.xaml 主界面 布局系统自带代码如下

php 复制代码
<Window x:Class="WpfApp1.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:WpfApp1"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
     
    </Grid>
</Window>

2 添加界面代码 及运行效果

我们需要在<Grid> </Grid> 之间天界主界面布局代码

我们的目标界面如下

我添加的代码如下

php 复制代码
<Window x:Class="WpfApp1.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:WpfApp1"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="1*"/>
            <RowDefinition Height="9*"/>
            <RowDefinition/>
        </Grid.RowDefinitions>

        <TextBlock Grid.Row="0" Grid.Column="0" Text="深圳大学图书馆"  FontSize="18" HorizontalAlignment="Center"/>

        <StackPanel Margin="5"  Grid.Row="1" Background="#0078d4">
            <TextBlock Text="登录"  FontSize="22" HorizontalAlignment="Center" Foreground="White" />
        </StackPanel>

        <Grid Grid.Row="3" HorizontalAlignment="Center">
            <Grid.RowDefinitions>
                <RowDefinition Height="30"/>
                <RowDefinition Height="30"/>
                <RowDefinition Height="30"/>
                <RowDefinition Height="30"/>
            </Grid.RowDefinitions>

            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto"/>
                <ColumnDefinition Width="200"/>
            </Grid.ColumnDefinitions>

            <TextBlock Text="用户名" Grid.Row="0" Grid.Column="0" VerticalAlignment="Center"  FontSize="20"/>
            <TextBox Grid.Row="0" Grid.Column="1" Margin="2"/>

            <TextBlock Text="密码" Grid.Row="1" VerticalAlignment="Center" FontSize="20"/>
            <TextBox Grid.Row="1" Grid.Column="1" Margin="2"/>

            <CheckBox Content="记住密码"   Grid.Row="2" Grid.ColumnSpan="2"  VerticalAlignment="Center" FontSize="20"/>

            <Button Content="登录" Grid.Row="3" Grid.ColumnSpan="2"  VerticalAlignment="Center" FontSize="20"/>
        </Grid>

    </Grid>
</Window>


3 重点代码解释

php 复制代码
			//总高度的1/10,
            <RowDefinition Height="1*"/>
            //总高度的9/10分,
            <RowDefinition Height="9*"/>
c 复制代码
//默认0列,所以Grid.Column="0"可以不写
<TextBlock Grid.Row="0" Grid.Column="0" Text="深圳大学图书馆"  FontSize="18" HorizontalAlignment="Center"/>

//Margin="5" 与上一行间距5 , HorizontalAlignment="Center"水平居中,VerticalAlignment="Center"垂直居中
<StackPanel Margin="5"  Grid.Row="1" Background="#0078d4">
php 复制代码
//Grid.ColumnSpan="2"  合并2列,默认从0列开始
 <CheckBox Content="记住密码"   Grid.Row="2" Grid.ColumnSpan="2"  VerticalAlignment="Center" FontSize="20"/>
相关推荐
LcVong16 小时前
WPF MediaPlayer获取网络视频流当前帧并展示图片完整范例
网络·wpf
bugcome_com17 小时前
WPF数据绑定入门:从传统事件到5种绑定模式
wpf
LateFrames18 小时前
我用 WPF 做了一个 “苍蝇飞舞” 的屏保
ui·wpf
wuty0071 天前
完善基于WPF开发的标尺控件(含实例代码)
wpf·wpf标尺·支持横向竖向标尺·ruler
浩浩测试一下2 天前
洪水猛兽攻击 Ddos Dos cc Drdos floods区别
安全·web安全·网络安全·系统安全·wpf·可信计算技术·安全架构
无心水2 天前
分布式环境下定时任务与SELECT FOR UPDATE的陷阱与解决方案
分布式·后端·wpf·xxl-job·quartz·定时任务·selectforupdate
xdpcxq10292 天前
Spring AOP + Guava RateLimiter 用注解实现优雅限流
spring·wpf·guava
Aevget2 天前
界面控件DevExpress WPF v25.2新版亮点:模板工具包全新升级
wpf·界面控件·devexpress·ui开发·.net 10
czhc11400756633 天前
wpf 129
wpf
码界奇点4 天前
基于eBPF技术的高性能网络防火墙系统设计与实现
开发语言·网络·毕业设计·php·wpf·go语言·源代码管理