WPF实战案例 | C# WPF实现大学选课系统

在这里插入图片描述
在这里插入图片描述

WPF实战案例 | C# WPF实现大学选课系统

  • 一、设计来源
    • 1.1 主界面
    • 1.2 登录界面
    • 1.3 新增课程界面
    • 1.4 修改密码界面
  • 二、效果和源码
    • 2.1 界面设计(XAML)
    • 2.2 代码逻辑(C#)
  • 源码下载
  • 更多优质源码分享

作者:xcLeigh
文章地址:https://blog.csdn.net/weixin_43151418/article/details/145299146


WPF实战案例 | C# WPF实现大学选课系统, C# WPF实现大学选课系统,大作业,毕业设计,该系统实现多身份登录、修改密码、课程的管理,个人信息的管理等功能。这个源码让你快速搭建自己的应用程序,注释完整,代码规范,各种风格都有,代码上手简单,代码独立,可以直接用程序打开,运行使用。也可直接点击EXE运行程序。

一、设计来源

本文章是分类专栏【WPF 从入门到精通
】下的里面的一篇,专栏里面包括网站,窗体应用程序的源码,技术点解析等案列源码,让你更加掌握WPF。持续更新中,欢迎大家关注,一起学习交流。

✂ 点击快速进入专栏

1.1 主界面

        大学选课系统主界面,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),该系统实现多身份登录、修改密码、课程的管理,个人信息的管理等功能,代码简单,注释清晰,容易在这个基础上扩展自己的系统。
在这里插入图片描述

1.2 登录界面

        大学选课系统登录界面,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),该系统实现多身份登录、修改密码、课程的管理,个人信息的管理等功能,代码简单,注释清晰,容易在这个基础上扩展自己的系统。

在这里插入图片描述

1.3 新增课程界面

        大学选课系统新增课程界面,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),该系统实现多身份登录、修改密码、课程的管理,个人信息的管理等功能,代码简单,注释清晰,容易在这个基础上扩展自己的系统。

在这里插入图片描述

1.4 修改密码界面

        大学选课系统修改密码界面,展示自己的logo和标题(这里可以自定义,可以扩展自己想要的风格),该系统实现多身份登录、修改密码、课程的管理,个人信息的管理等功能,代码简单,注释清晰,容易在这个基础上扩展自己的系统。

在这里插入图片描述

二、效果和源码

2.1 界面设计(XAML)

<Window x:Class="CourseSelection.WindowLogin"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="登录" FontSize="22" Loaded="Window_Loaded" mc:Ignorable="d" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" Height="334" Width="550" Closing="Window_Closing" Icon="/icon.png" WindowStartupLocation="CenterScreen" ResizeMode="CanMinimize"><Window.Background><ImageBrush ImageSource="/login_pic.png"></ImageBrush></Window.Background><Grid Name="gridMain"><Grid.Background><ImageBrush/></Grid.Background><Grid.RowDefinitions><RowDefinition></RowDefinition><RowDefinition></RowDefinition><RowDefinition></RowDefinition><RowDefinition></RowDefinition><RowDefinition></RowDefinition></Grid.RowDefinitions><Grid.ColumnDefinitions><ColumnDefinition Width="40*"></ColumnDefinition><ColumnDefinition Width="15*"/><ColumnDefinition Width="11*"></ColumnDefinition><ColumnDefinition Width="28*"/><ColumnDefinition Width="16*"/></Grid.ColumnDefinitions><Label HorizontalAlignment="Right" VerticalAlignment="Bottom" FontSize="22" Grid.Row="0" Grid.Column="0" Margin="0,0,0,64" Grid.RowSpan="2" Grid.ColumnSpan="2">用户名:</Label><Label HorizontalAlignment="Left" VerticalAlignment="Center" FontSize="22" Grid.Row="1" Content="密   码:" Margin="179,0,0,0" Grid.ColumnSpan="2"></Label><Label HorizontalAlignment="Right" VerticalAlignment="Top" FontSize="22" Grid.Row="2" Content="验证码:" Grid.ColumnSpan="2"></Label><StackPanel Grid.Column="2" VerticalAlignment="Bottom" Grid.ColumnSpan="3" Margin="0,0,0,64" Grid.RowSpan="2"><TextBox Name="txtUser" Margin="0,0,100,5"></TextBox></StackPanel><StackPanel Grid.Row="1" Grid.Column="2" VerticalAlignment="Center" Grid.ColumnSpan="3"><PasswordBox Name="txtPsw"  Margin="0,0,100,5"></PasswordBox></StackPanel><Grid Name="gridPIN" Grid.Row="2" Grid.Column="2" Grid.ColumnSpan="3"><Grid.ColumnDefinitions><ColumnDefinition Width="90*"></ColumnDefinition><ColumnDefinition Width="176*"></ColumnDefinition></Grid.ColumnDefinitions><StackPanel  VerticalAlignment="Top"><TextBox Name="txtPIN"  Margin="2"></TextBox></StackPanel><StackPanel Name="skpPIN" Orientation="Horizontal"  Grid.Column="1" HorizontalAlignment="Left" VerticalAlignment="top" ></StackPanel></Grid><RadioButton Name="rbtnTeacher" Margin="0,5,130,0" HorizontalAlignment="Right" VerticalAlignment="Top" Grid.Row="3" Content="教师" FontSize="18" RenderTransformOrigin="3,0.389" Grid.Column="2" Grid.ColumnSpan="2"/><RadioButton Name="rbtnStudent" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Row="3" Content="学生" FontSize="18" IsChecked="True" Margin="190,4,0,0" Grid.ColumnSpan="2"/><Button Name="btnLogin" Margin="0,64,30,0" HorizontalAlignment="Right" VerticalAlignment="Top" Grid.Row="3" Grid.Column="0" Content="登    录" FontSize="18" Click="btnLogin_Click" Padding="20,6,20,6" Background="#FF13227A" FontFamily="Calibri" Foreground="White" Grid.RowSpan="2" Grid.ColumnSpan="2" Cursor="Hand"></Button><Button Name="btnChangePsw" HorizontalAlignment="Left" VerticalAlignment="Top" Grid.Row="3" Content="修改密码" FontSize="18" Click="btnChangePsw_Click" Margin="56,64,0,0" Grid.RowSpan="2" Padding="20,6,20,6" FontFamily="Calibri" Background="#FF13227A" Foreground="White" Grid.ColumnSpan="3" Grid.Column="1" Cursor="Hand"/></Grid></Window>

说明:
    XAML(eXtensible Application Markup Language)是一种用于初始化结构化值和对象的标记语言。在 WPF(Windows Presentation Foundation)中,它主要用于构建用户界面。它具有清晰的层次结构,能够以声明式的方式描述 UI 元素及其属性,就像 HTML 用于网页布局一样,但功能更加强大。

2.2 代码逻辑(C#)

using System;
using System.Windows;namespace WpfCalculator
{public partial class WindowLogin: Window{public WindowLogin(){InitializeComponent();}private void Window_Loaded(object sender, RoutedEventArgs e){initialize();}private void btnLogin_Click(object sender, RoutedEventArgs e){StrUtils.login(txtUser.Text, txtPsw.Password, "student");}}
}

源码下载

注:源码下载在文章头部也可以点击下载,跟这里的是一样的

WPF实战案例 | C# WPF实现大学选课系统(源码) 点击下载
在这里插入图片描述

更多优质源码分享

  • 【百篇源码模板】html5各行各业官网模板源码下载

  • 【模板源码】html实现酷炫美观的可视化大屏(十种风格示例,附源码)

  • 【VUE系列】VUE3实现个人网站模板源码

  • 【HTML源码】HTML5小游戏源码

  • 【C#实战案例】C# Winform贪吃蛇小游戏源码


--------------- 业精于勤,荒于嬉 ---------------

请添加图片描述

--------------- 行成于思,毁于随 ---------------

     💢 关注博主 带你实现畅游前后端

     🏰 大屏可视化 带你体验酷炫大屏

     💯 神秘个人简介 带你体验不一样得介绍

     💘 为爱表白 为你那个TA,体验别致的浪漫惊喜

     🎀 酷炫邀请函 带你体验高大上得邀请


     ① 🉑提供云服务部署(有自己的阿里云);
     ② 🉑提供前端、后端、应用程序、H5、小程序、公众号、大作业等相关业务;
     如🈶合作请联系我,期待您的联系。
    :本文撰写于CSDN平台,作者:xcLeigh(所有权归作者所有),https://blog.csdn.net/weixin_43151418,如果相关下载没有跳转,请查看这个地址,相关链接没有跳转,皆是抄袭本文,转载请备注本文原地址。


     亲,码字不易,动动小手,欢迎 点赞 ➕ 收藏,如 🈶 问题请 留言(私信或评论),博主看见后一定及时给您答复,💌💌💌


原文地址:https://blog.csdn.net/weixin_43151418/article/details/145299146(防止抄袭,原文地址不可删除)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/5979.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JAVA:Spring Boot 实现责任链模式处理订单流程的技术指南

1、简述 在复杂的业务系统中&#xff0c;订单流程往往需要一系列的操作&#xff0c;比如验证订单、检查库存、处理支付、更新订单状态等。责任链模式&#xff08;Chain of Responsibility&#xff09;可以帮助我们将这些处理步骤分开&#xff0c;并且以链式方式处理每一个操作…

stm32单片机个人学习笔记14(USART串口数据包)

前言 本篇文章属于stm32单片机&#xff08;以下简称单片机&#xff09;的学习笔记&#xff0c;来源于B站教学视频。下面是这位up主的视频链接。本文为个人学习笔记&#xff0c;只能做参考&#xff0c;细节方面建议观看视频&#xff0c;肯定受益匪浅。 STM32入门教程-2023版 细…

postgresql15的启动

PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统&#xff0c;且因为许可证的灵活&#xff0c;任何人都可以以任何目的免费使用、修改和分发PostgreSQL。现在国产数据库大力发展阶段&#xff0c;学习和熟悉postgresql的功能是非常有必要的&#x…

行人识别检测数据集,yolo格式,PASICAL VOC XML,COCO JSON,darknet等格式的标注都支持,准确识别率可达99.5%

作者简介&#xff1a; 高科&#xff0c;先后在 IBM PlatformComputing从事网格计算&#xff0c;淘米网&#xff0c;网易从事游戏服务器开发&#xff0c;拥有丰富的C&#xff0c;go等语言开发经验&#xff0c;mysql&#xff0c;mongo&#xff0c;redis等数据库&#xff0c;设计模…

【前端】CSS实战之音乐播放器

目录 播放器背景旋转音乐封面按钮进度条音量调节音乐信息按钮的效果JavaScript部分播放和暂停音乐切换音乐信息进度条 音量调节避免拖拽时的杂音音量调节条静音和解除静音 自动下一首实现一个小效果最终效果 播放器背景 <div class"play_box"></div>设置…

SSM开发(一)JAVA,javaEE,spring,springmvc,springboot,SSM,SSH等几个概念区别

目录 JAVA 框架 javaEE spring springmvc springboot SSM SSH maven JAVA 一种面向对象、高级编程语言&#xff0c;Python也是高级编程语言&#xff1b;不是框架(框架&#xff1a;一般用于大型复杂需求项目&#xff0c;用于快速开发)具有三大特性&#xff0c;所谓Jav…

rocketmq基本架构

简介 Name server 负责broker注册、心跳&#xff0c;路由等功能&#xff0c;类似Kafka的ZKname server节点之间不互相通信&#xff0c;broker需要和所有name server进行通信。扩容name server需要重启broker&#xff0c;不然broker不会和name server建立连接producer和consum…

【Web】2025-SUCTF个人wp

目录 SU_blog SU_photogallery SU_POP SU_blog 先是注册功能覆盖admin账号 以admin身份登录&#xff0c;拿到读文件的权限 ./article?filearticles/..././..././..././..././..././..././etc/passwd ./article?filearticles/..././..././..././..././..././..././proc/1…

【优选算法】6----查找总价格为目标值的两个商品

这道题相对于前寄到算法题较为容易~ 同样也是使用了双指针的算法哦~ ----------------------------------------begin-------------------------------------- 题目解析&#xff1a; 题目也是很简单地一句话&#xff0c;但是意图还是很明确~ 讲解算法原理&#xff1a; 同样的&…

github登录用的TOTP和恢复码都丢失了怎么办

从22年左右开始github的登录就需要用TOTP的一个6位秘钥做二次认证登录&#xff0c;如果在用的TOTP软件失效了&#xff0c;可以用github开启二次认证时下载的恢复码重置认证&#xff0c;但是如果你和我一样这两个东西都没了就只能用邮箱重置了&#xff0c;过程给大家分享一下 一…

FFmpeg常用命令

文章目录 一、 FFmpeg 音视频的处理流程二、FFmpeg 常用命令2.1、查看本机支持的采集设备2.2、 录制视频2.2.1、原始视频2.2.2、编码的视频 2.3、录制音频&#xff1a;2.3.1、原始音频2.3.2、编码的音频 2.4、录制音视频&#xff1a;2.5、文件格式转换&#xff1a;2.6、提取音频…

30天开发操作系统 第 17 天 -- 命令行窗口

前言 今天一开始&#xff0c;请大家先回忆一下任务A的情形。在harib13e中&#xff0c;任务A下面的LEVEL中有任务因此FIFO为空时我们可以让任务A进入休眠状态。那么&#xff0c;如果我们并未启动任务B0~ B0~ B2, B2的话&#xff0c;任务A又将会如何呢&#xff1f; 首先&#xf…

OpenEuler学习笔记(九):安装 OpenEuler后配置和优化

安装OpenEuler后&#xff0c;可以从系统基础设置、网络配置、性能优化等方面进行配置和优化&#xff0c;以下是具体内容&#xff1a; 系统基础设置 更新系统&#xff1a;以root用户登录系统后&#xff0c;在终端中执行sudo yum update命令&#xff0c;对系统进行更新&#x…

网络安全 | 入侵检测系统(IDS)与入侵防御系统(IPS):如何识别并阻止威胁

网络安全 | 入侵检测系统&#xff08;IDS&#xff09;与入侵防御系统&#xff08;IPS&#xff09;&#xff1a;如何识别并阻止威胁 一、前言二、入侵检测系统&#xff08;IDS&#xff09;2.1 IDS 的工作原理2.2 IDS 的技术类型2.3 IDS 的部署方式 三、入侵防御系统&#xff08;…

数学规划问题2 .有代码(非线性规划模型,最大最小化模型,多目标规划模型)

非线性规划模型 FIrst:转化为标准型 在matlab中求非线性规划的函数 练习题: 典型例题: 最大最小化模型 核心思想&#xff1a; matlab的模型求解 经典例题: 多目标规划模型 基本概念 求解思路: 模型构建步骤 经典例题: 非线性规划模型 非线性规划&#xff08;Nonl…

2025年最新深度学习环境搭建:Win11+ cuDNN + CUDA + Pytorch +深度学习环境配置保姆级教程

本文目录 一、查看驱动版本1.1 查看显卡驱动1.2 显卡驱动和CUDA对应版本1.3 Pytorch和Python对应的版本1.4 Pytorch和CUDA对应的版本 二、安装CUDA三、安装cuDANN四、安装pytorch五、验证是否安装成功 一、查看驱动版本 1.1 查看显卡驱动 输入命令nvidia-smi可以查看对应的驱…

Transformer详解:Attention机制原理

前言 Hello&#xff0c;大家好&#xff0c;我是GISer Liu&#x1f601;&#xff0c;一名热爱AI技术的GIS开发者&#xff0c;本系列文章是作者参加DataWhale2025年1月份学习赛&#xff0c;旨在讲解Transformer模型的理论和实践。&#x1f632; 本文将详细探讨Attention机制的原理…

npm install 报错:Command failed: git checkout 2.2.0-c

[TOC](npm install 报错&#xff1a;Command failed: git checkout 2.2.0-c) npm install 报错&#xff1a;Command failed: git checkout 2.2.0-c export NODE_HOME/usr/local/node-v14.14.0-linux-x64 npm config set registry https://registry.npmmirror.com 使用如上环…

从对等通信到万维网:通信模型变迁与拥塞求解

Leonard Kleinrock&#xff1a;我很清楚用不了多久这些计算机就会有相互通信的需求&#xff0c;但如何协调处理这些分时系统概率性产生的分组(不同于电路交换)&#xff0c;却没有有效的方法&#xff0c;我有处理该问题的方法&#xff0c;因此对于我的博士研究&#xff0c;我决定…

【Vim Masterclass 笔记21】S09L39:Vim 设置与 vimrc 文件的用法示例(二)

文章目录 S09L39 Vim Settings and the Vimrc File - Part 21 Vim 的配色方案与 color 命令2 map 命令3 示例&#xff1a;用 map 命令快速生成 HTML 代码片段4 Vim 中的 Leader 键5 用 mkvimrc 命令自动生成配置文件 写在前面 本篇为 Vim 自定义配置的第二部分。当中的每个知识…