WPF入门

C#技术栈

gitCode代码

类别 核心特征 输出文件 比喻
​应用程序​ ​终点​ ​。可以​​独立运行​​,拥有程序入口点(Main 方法),是直接面向用户的最终产品。 ​.exe​​ (可执行文件) ​一家完整的餐厅​​。顾客可以直接进去点餐、用餐。
​库​ ​零件/工具​ ​。​​不能独立运行​ ​,它封装了可重用的代码、控件或资源,需要被​​应用程序引用​​才能发挥作用。 ​.dll​​ (动态链接库) ​餐厅的中央厨房或食材供应商​​。它生产半成品和酱料,但不能直接招待客人,需要提供给餐厅使用。

虽然都是库(.dll),但它们的专长不同。图片中主要有三种库模板:

​​WPF 用户控件库​​

​​用途​​:用于创建 ​​"用户控件"​​。

​​特点​​:通过将多个现有的WPF基础控件(如TextBox、Button)组合在一起,形成一个功能完整的、可重用的新控件。​​通常使用XAML来定义界面​​,偏向于快速开发和特定业务场景的界面复用。

​​举例​​:创建一个包含"标签"、"文本框"、"浏览按钮"的"文件路径选择器"控件。

​​WPF 自定义控件库​​

​​用途​​:用于创建 ​​"自定义控件"​​。

​​特点​​:当需要完全从头开始绘制控件外观、或需要高度自定义行为和主题时使用。它更底层,通常涉及编写控制模板(ControlTemplate)和样式(Style),​​更像是在打造一个全新的、基础性的UI组件​​。

​​举例​​:模仿一个圆形音量旋钮控件,或者一个具有特殊动画效果的进度条。

​​WPF 类库​​

​​用途​​:用于创建 ​​"非UI的业务逻辑和通用类"​​。

​​特点​​:这个项目里​​通常不包含XAML界面文件​​,而是包含处理数据、算法、数据库操作、文件读写等后台逻辑的类(Class)。它是所有库类型中最通用的一种。

​​举例​​:编写一个"学生信息管理类"(StudentManager)或一个"图片处理工具类"。

相关推荐
2601_963869951 小时前
【计算机毕业设计】基于Java的潮牌购物网站系统的设计与实现
java·开发语言·课程设计
名字还没想好☜1 小时前
Go 的 io.Reader/Writer 组合实战:io.Copy、TeeReader、MultiWriter 优雅处理数据流
开发语言·后端·golang·go·iphone
郝学胜-神的一滴2 小时前
Qt 高级编程 042:进度条从入门到自定义美化
开发语言·c++·qt·软件开发·用户界面
鸿芯微控科技2 小时前
压电纳米定位分辨率怎么测?噪声、带宽、最小可检测位移与Python分析
开发语言·python·噪声分析·压电执行器·纳米定位·位移测量
会编程的土豆2 小时前
从「锁」到「时间」:后端里几个容易混的概念
java·开发语言·数据库·goland
@小匠2 小时前
Spring Boot Nacos绑定 Map 时中文 key 导致启动失败:一次从复现到源码的排查实录
java·开发语言·前端
Knight_AL2 小时前
Lombok @Builder 踩坑:build() 前后对象类型不一样
android·java·开发语言
神明不懂浪漫3 小时前
【第五章】队列
开发语言·数据结构·经验分享·笔记·算法
吃好睡好便好3 小时前
MATLAB仿真框图3
开发语言·matlab·仿真·simulink
-银雾鸢尾-3 小时前
C#中的反射关键类-Type
开发语言·c#