C# 20260109

呼~ ,累麻了。 义务加班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

相关推荐
脏脏a9 小时前
手撕 vector:从 0 到 1 模拟实现 STL 容器
开发语言·c++·vector
superman超哥9 小时前
Rust VecDeque 的环形缓冲区设计:高效双端队列的奥秘
开发语言·后端·rust·rust vecdeque·环形缓冲区设计·高效双端队列
星辰烈龙9 小时前
黑马程序员JavaSE基础加强d6
java·开发语言
电商API&Tina9 小时前
电商数据采集 API:驱动选品、定价、运营的数据分析核心引擎
大数据·开发语言·人工智能·python·数据分析·json
半路程序员9 小时前
Go内存泄漏排查pprof和trace使用
开发语言·后端·golang
沐知全栈开发9 小时前
PHP MySQL 插入数据
开发语言
WongLeer9 小时前
Go + GORM 多级分类实现方案对比:内存建树、循环查询与 Preload
开发语言·后端·mysql·golang·gorm
小罗和阿泽10 小时前
Java项目 简易图书管理系统
java·开发语言
superman超哥10 小时前
Rust HashMap的哈希算法与冲突解决:高性能关联容器的内部机制
开发语言·后端·rust·哈希算法·编程语言·冲突解决·rust hashmap