WPF入门学习(概述)
1。为什么要学习wpf:
sliverlight是wpf的一个子集,可支持跨域浏览器。现在sliverlight有一定应用了。所以学习了wpf再看silverlight就简单多了。还有wpf可以用用在桌面上开发,虽然不多,相信以后会有的。
2。wpf的优点
wpf主要是用来开发界面的,但界面漂亮。
因为它利用到了微软的directx技术,以前的basic,delphi,c++都是利用windows的user32,gdi来开发的。
他具有几项功能优点:
1)基于矢量绘图技术,可以将图形任意无限放大缩小。
2)显示图像与设备单位无关:就是在不同的分辨率下,显示同样的图像。
3)显示界面适应不同的显示设备。
4)支持多媒体,动画
5)有样式,模板特性(这不算什么优点,其他界面也有)
3。wpf架构(三层)
第一层 托管代码wpf api :presentationFramework.dll prsesentationCore.dll,windowsBase.dll
第二层是 milcore.dll,windowsCodes.dll 多媒体整合
第三层:direct3d,user32(操作系统底层的东西)
4。wpf类层次结构
System。Threading。DispacherObject 这个对象主要是用来整理消息:将键盘输入,鼠标移动等框架处理整理到用户界面线程。用户界面线程是一个单一的线程。
System。windows。DependencyObject 继承DispacherObject 。通过属性来与界面元素交互,相当我们在后台写属性后前台的界面就会发生一定变化。
System。Windows.Media.Visual 继承DependencyObject 可视化对象 继承visual的对象都有能力呈现在窗口上
System。Windows。UIElement继承Visual ,wpf的核心子系统。包括布局,输入,事件,焦点。
System。windows。FrameworkElement实现了很多UIElement仅定义的成员。如设置些属性HorizontalAlignment和Margin。同时还支持两个关键:数据绑定和样式
System.Windows.Shapes.Shape 继承FrameworkElement:如Rectangle,polygon,Ellipse,Line,Path
System。Windows.Controls.Control 继承FrameworkElement :如textbox,Button,ListBox,等。
system.WINDOWS.Controls.ContentControl继承Control :是其他控件继承他,用来呈现单块内容。
System.windows.Controls.ItemControl继承Control:是集合项控件的基类。
System。windows。Controls。panel 继承Control:布局容器面板的基类
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律