呼~ ,累麻了。 义务加班2h,天天被公司白嫖,以前只有我白嫖别人,damn it!
打开网盘,把今天摸鱼看的视频内容整理出来。学习路线,Visualstudio界面介绍
直接从WPF走起,WPF是一个UI框架,里面的控件之间的交互是需要用到C#的中高阶语法。

以上内容均可以在学习WPF的过程中完成学习。
WPF规划的学习路线:先从整体框架,再去学习细节。(老师推荐)

接上图:

接上图:

按视频安装Visual studio2022,哈哈,以前就下过了,直接下一个视频。
经典第一步,hello world的C#程序编写(.NET版本为4.7.2)。后续不写步骤了,主写在完成过程中的代码有哪些运用了什么知识点的。


**①:**调试配置
- 调试配置:
- Debug模式:调试状态
- Release模式:发布版本
**②:**设计前端界面
**③:**前端代码
**④:**解决方案资源管理器
- 项目结构:
- Properties:属性,其中AssemblyInfo.cs包含程序集信息(版本号啥的)
- References:项目引用的库
- App.config:XML格式的配置文件
- App.xaml:代表当前应用程序本身,可以包含多个窗体或对话框
- MainWindow.xaml:主窗体文件
分析App.xmal和MainWindow.xmal关系:
重点关注这个部分,这是HelloWorld程序加载的关键部分。

- 文件组成:
- 前端代码:以.xaml扩展名结尾
- 后端代码:以.xaml.cs结尾(称为隐藏代码)
- 代码关系:
- 前端代码负责界面定义
- 后端代码处理业务逻辑
- 两者通过partial关键字组合成完整类
App.xaml:
XML
<Application x:Class="HelloWorld.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:HelloWorld"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</Application>
App.xaml.cs:
cs
namespace HelloWorld
{
/// <summary>
/// App.xaml 的交互逻辑
/// </summary>
public partial class App : Application
{
}
}
MainWindow.xaml:

MainWindow.xaml.cs:
cs
namespace HelloWorld
{
/// <summary>
/// MainWindow.xaml 的交互逻辑
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
}
}
首先分析partial(分部类型):通过分部类型可以定义要拆分到多个定义中的类、结构、接口或记录。 这些多个定义可以位于同一项目内的不同文件中。(定义我是从官方文档弄过来的)

这里不需要太细了,容易搞晕。大概意思就是前端的.xmal和后端的.cs代码共同实现一个完整的类。
接着通过观察App.xaml.cs中app是继承了application。ctrl加鼠标双击application这个类可以看到它的反编译文件,找到startupUri,发现它是一个属性。结合App.xaml发现startupUri被设置成了MainWindow.xmal

因此点击启动项目按钮,第一步执行app.xmal文件,找到主窗体MainWindow.xmal,MainWindow.xmal作为资源被加载到startupUrl,作为启动窗口启动。
程序有启动时候,也会有消亡时候。
Application生命周期
**快捷键:**在.xmal文件按F7就可以跳到它后端.cs代码。
视频分析了applicaiton中的4个函数的调用,分别是下面四个。
-
- OnStartup:启动, 加载本地设置参数
- OnExit: 退出,保存缓存数据
- OnActivated/Deactivated: 激活和不激活,处理暂停/恢复逻辑
有点晚了,已经看了一遍,明天找个机会写,喵的,还得上班。学习的动力是工作的压力,难绷。。。
2026/1/9