C# WPF 基础教程「建议收藏」

本课程是《C#WPF基础教程》,对应着教材的第1章到第17章。第1章  WPF概述      1.1  Windows图形演化      1.1.1  DirectX:新的图形引擎      1.1.2  硬件加速与WPF      1.2  WPF:高级API      1.2.1  Windows窗体将继续保留      1.2.2 

大家好,又见面了,我是你们的朋友全栈君。

更多资源进群: 377215114


本课程是《C# WPF 基础教程》,对应着教材的第1章到第17章。



第1章  WPF概述        


1.1  Windows图形演化        


1.1.1  DirectX:新的图形引擎        


1.1.2  硬件加速与WPF        


1.2  WPF:高级API        


1.2.1  Windows窗体将继续保留        


1.2.2  DirectX也将继续保留        


1.2.3  Silverlight        


1.3  分辨率无关性        


1.3.1  WPF单位        


1.3.2  系统DPI        


1.3.3  位图和矢量图形        


1.4  WPF体系结构        


1.5  WPF 4        


1.5.1  新特性        


1.5.2  WPF 工具包        


1.5.3  Visual Studio 2010        


1.6  小结        


第2章  XAML        


2.1  理解XAML        


2.1.1  WPF之前的图形用户界面        


2.1.2  XAML变体        


2.1.3  XAML编译        


2.2  XAML基础        


2.2.1  XAML名称空间        


2.2.2  代码隐藏类        


2.3  XAML中的属性和事件        


2.3.1  简单属性与类型转换器        


2.3.2  复杂属性        


2.3.3  标记扩展        


2.3.4  附加属性        


2.3.5  嵌套元素        


2.3.6  特殊字符与空白        


2.3.7  事件        


2.3.8  完整的Eight Ball示例        


2.4  使用其他名称空间中的类型        


2.5  加载和编译XAML        


2.5.1  只使用代码        


2.5.2  使用代码和未经编译的XAML        


2.5.3  使用代码和编译过的XAML        


2.5.4  只使用XAML        


2.6  XAML 2009        


2.6.1  自动事件连接        


2.6.2  引用        


2.6.3  内置类型        


2.6.4  高级的对象创建        


2.7  小结        


第3章  布局        


3.1  理解WPF中的布局        


3.1.1  WPF布局原则        


3.1.2  布局过程        


3.1.3  布局容器        


3.2  使用StackPanel面板进行简单   布局        


3.2.1  布局属性        


3.2.2  对齐方式        


3.2.3  边距        


3.2.4  最小尺寸、最大尺寸以及显式地设置尺寸        


3.2.5  Border控件        


3.3  WrapPanel面板和DockPanel面板        


3.3.1  WrapPanel面板        


3.3.2  DockPanel面板        


3.3.3  嵌套布局容器        


3.4  Grid面板        


3.4.1  调整行和列        


3.4.2  布局舍入        


3.4.3  跨越行和列        


3.4.4  分割窗口        


3.4.5  共享尺寸组        


3.4.6  UniformGrid面板        


3.5  使用Canvas面板进行基于坐标的布局        


3.5.1  Z顺序        


3.5.2  lnkCanvas元素        


3.6  布局示例        


3.6.1  列设置        


3.6.2  动态内容        


3.6.3  组合式用户界面        


3.7  小结        


第4章  依赖项属性        


4.1  理解依赖项属性        


4.1.1  定义依赖项属性        


4.1.2  注册依赖项属性        


4.1.3  添加属性包装器        


4.1.4  WPF使用依赖项属性的方式        


4.1.5  共享的依赖项属性        


4.1.6  附加的依赖项属性        


4.2  属性验证        


4.2.1  验证回调        


4.2.2  强制回调        


4.3  小结        


第5章  路由事件        


5.1  理解路由事件        


5.1.1  定义、注册和包装路由事件        


5.1.2  共享路由事件        


5.1.3  引发路由事件        


5.1.4  处理路由事件        


5.2  事件路由        


5.2.1  RoutedEventArgs类        


5.2.2  冒泡路由事件        


5.2.3  处理挂起的事件        


5.2.4  附加事件        


5.2.5  隧道路由事件        


5.3  WPF事件        


5.3.1  生命周期事件        


5.3.2  输入事件        


5.4  键盘输入        


5.4.1  处理按键事件        


5.4.2  焦点        


5.4.3  获取键盘状态        


5.5  鼠标输入        


5.5.1  鼠标单击        


5.5.2  捕获鼠标        


5.5.3  鼠标拖放        


5.6  多点触控输入        


5.6.1  多点触控的输入层次        


5.6.2  原始触控        


5.6.3  操作        


5.6.4  惯性        


5.7  小结        


第6章  控件        


6.1  控件类        


6.1.1  背景画刷和前景画刷        


6.1.2  字体        


6.1.3  鼠标光标        


6.2  内容控件        


6.2.1  Content属性        


6.2.2  对齐内容        


6.2.3  WPF内容原则        


6.2.4  标签        


6.2.5  按钮        


6.2.6  工具提示        


6.3  特殊容器控件        


6.4  带标题的内容控件        


6.4.1  GroupBox        


6.4.2  TabItem        


6.4.3  Expander        


6.5  文本控件        


6.5.1  多行文本        


6.5.2  选择文本        


6.5.3  拼写检查        


6.5.4  PasswordBox        


6.6  列表控件        


6.6.1  ListBox        


6.6.2  ComboBox        


6.7  基于范围的控件        


6.7.1  Slider控件        


6.7.2  进度条        


6.8  日期控件        


6.9  小结        


第7章  Application类        


7.1  应用程序的生命周期        


7.1.1  创建Application对象        


7.1.2  派生一个自定义的


Application类        


7.1.3  应用程序的关闭方式        


7.1.4  应用程序事件        


7.2  Application类的任务        


7.2.1  显示初始界面        


7.2.2  处理命令行参数        


7.2.3  访问当前Application对象        


7.2.4  在窗口之间进行交互        


7.2.5  单实例应用程序        


7.3  程序集资源        


7.3.1  添加资源        


7.3.2  检索资源        


7.3.3  pack URI        


7.3.4  内容文件        


7.4  本地化        


7.4.1  构建能够本地化的用户界面        


7.4.2  使应用程序为本地化做好准备        


7.4.3  翻译过程        


7.5  小结        


第8章  元素绑定        


8.1  将元素绑定到一起        


8.1.1  绑定表达式        


8.1.2  绑定错误        


8.1.3  绑定模式        


8.1.4  使用代码创建绑定        


8.1.5  多绑定        


8.1.6  绑定更新        


8.2  绑定到非元素对象        


8.2.1  Source属性        


8.2.2  RelativeSource属性        


8.2.3  DataContext属性        


8.3  小结        


第9章  命令        


9.1  理解命令        


9.2  WPF命令模型        


9.2.1  ICommand接口        


9.2.2  RoutedCommand类        


9.2.3  RoutedUICommand类        


9.2.4  命令库        


9.3  执行命令        


9.3.1  命令源        


9.3.2  命令绑定        


9.3.3  使用多命令源        


9.3.4  微调命令文本        


9.3.5  直接调用命令        


9.3.6  禁用命令        


9.3.7  具有内置命令的控件        


9.4  高级命令        


9.4.1  自定义命令        


9.4.2  在不同的位置使用相同的命令        


9.4.3  使用命令参数        


9.4.4  跟踪和翻转命令        


9.5  小结        


第10章  资源        


10.1  资源基础        


10.1.1  资源集合        


10.1.2  资源的层次        


10.1.3  静态资源和动态资源        


10.1.4  非共享资源        


10.1.5  通过代码访问资源        


10.1.6  应用程序资源        


10.1.7  系统资源        


10.2  资源字典        


10.2.1  创建资源字典        


10.2.2  使用资源字典        


10.2.3  在程序集之间共享资源        


10.3  小结        


第11章  样式和行为        


11.1  样式基础        


11.1.1  创建样式对象        


11.1.2  设置属性        


11.1.3  关联事件处理程序        


11.1.4  多层样式        


11.1.5  通过类型自动应用样式        


11.2  触发器        


11.2.1  简单触发器        


11.2.2  事件触发器        


11.3  行为        


11.3.1  获取行为支持        


11.3.2  理解行为模型        


11.3.3  创建行为        


11.3.4  使用行为        


11.3.5  Blend中的设计时行为支持        


11.4  小结        


第12章  形状、画刷和变换        


12.1  理解形状        


12.1.1  Shape类        


12.1.2  矩形和椭圆        


12.1.3  改变形状的尺寸和放置形状        


12.1.4  使用Viewbox控件缩放形状        


12.1.5  直线        


12.1.6  折线        


12.1.7  多边形        


12.1.8  直线线帽和直线交点        


12.1.9  点划线        


12.1.10  像素对齐        


12.2  画刷        


12.2.1  SolidColorBrush画刷        


12.2.2  LinearGradientBrush画刷        


12.2.3  RadialGradientBrush画刷        


12.2.4  ImageBrush画刷        


12.2.5  平铺的ImageBrush画刷        


12.2.6  VisualBrush画刷        


12.2.7  BitmapCacheBrush画刷        


12.3  变换        


12.3.1  变换形状        


12.3.2  变换元素        


12.4  透明        


12.4.1  使用元素半透明        


12.4.2  透明掩码        


12.5  小结        


第13章  几何图形和图画        


13.1  路径和几何图形        


13.1.1  直线、矩形和椭圆图形        


13.1.2  使用GeometryGroup 组合形状        


13.1.3  使用CombinedGeometry 融合几何图形        




13.1.4  使用PathGeometry绘制曲线和直线        


13.1.5  微语言几何图形        


13.1.6  使用几何图形进行剪裁        


13.2  图画        


13.2.1  显示图画        


13.2.2  导出插图        


13.3  小结        


第14章  效果和可视化对象        


14.1  可视化对象        


14.1.1  绘制可视化对象        


14.1.2  在元素中包装可视化对象        


14.1.3  命中测试        


14.1.4  复杂的命中测试        


14.2  效果        


14.2.1  BlurEffect类        


14.2.2  DropShadowEffect类        


14.2.3  ShaderEffect类        


14.3  WriteableBitmap类        


14.3.1  生成位图        


14.3.2  写入WriteableBitmap对象        


14.3.3  更高效的像素写入        


14.4  小结        


第15章  动画基础        


15.1  理解WPF动画        


15.1.1  基于时间的动画        


15.1.2  基于属性的动画        


15.2  基本动画        


15.2.1  Animation类        


15.2.2  使用代码创建动画        


15.2.3  同时发生的动画        


15.2.4  动画生命期        


15.2.5  Timeline类        


15.3  故事板        


15.3.1  故事板        


15.3.2  事件触发器        


15.3.3  重叠动画        


15.3.4  同步的动画        


15.3.5  控制播放        


15.3.6  监视动画进度        


15.4  动画缓动        


15.4.1  使用缓动函数        


15.4.2  在动画开始时应用缓动与在动画结束时应用缓动        


15.4.3  缓动函数类        


15.4.4  创建自定义缓动函数        


15.5  动画性能        


15.5.1  期望的帧速率        


15.5.2  位图缓存        


15.6  小结        


第16章  高级动画        


16.1  动画类型回顾        


16.1.1  动态变换        


16.1.2  动态改变画刷        


16.1.3  动态改变像素着色器        


16.2  关键帧动画        


16.2.1  离散的关键帧动画        


16.2.2  缓动关键帧        


16.2.3  样条关键帧动画        


16.3  基于路径的动画        


16.4  基于帧的动画        


16.5  使用代码创建故事板        


16.5.1  主窗口        


16.5.2  Bomb用户控件        


16.5.3  投炸弹        


16.5.4  拦截炸弹        


16.5.5  统计炸弹和清理工作        


16.6  小结        


第17章  控件模板        


17.1  理解逻辑树和可视化树        


17.2  理解模板        


17.2.1  修饰类        


17.2.2  剖析控件        


17.3  创建控件模板        


17.3.1  简单按钮        


17.3.2  模板绑定        


17.3.3  改变属性的触发器        


17.3.4  使用动画的触发器        


17.4  组织模板资源        


17.4.1  分解按钮控件模板        


17.4.2  通过样式应用模板        


17.4.3  自动应用模板        


17.4.4  由用户选择的皮肤        


17.5  构建更复杂的模板        


17.5.1  嵌套的模板        


17.5.2  修改滚动条        


17.5.3  控件模板示例        


17.6  可视化状态        


17.7  小结        

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127167.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • tcp udp 的区别_反映和反应的区别

    tcp udp 的区别_反映和反应的区别一、TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TE…

    2022年9月20日
    2
  • dw自动滚动图片_DW图片无缝滚动代码

    dw自动滚动图片_DW图片无缝滚动代码DIV的图片无缝滚动,DIV图片上无缝滚动,DIV图片下无缝滚动,DIV图片左无缝滚动,DIV图片右无缝滚动1.先了解一下对象的几个的属性:innerHTML:设置或获取位于对象起始和结束标签内的HTMLscrollHeight:获取对象的滚动高度。scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶…

    2022年7月18日
    15
  • DotNetTextBox编辑器漏洞,可上传任意文件

    DotNetTextBox编辑器漏洞,可上传任意文件otNetTextBox编辑器洞洞文件上传漏洞1、用firebug将disabled=”disabled’,value=”jgp,gif,png”修改为enabled=”enabled”,value=”jpg,gif,png,aspx”,然后点更新成功按钮2、弹出更新成功3、刷新页面,发现此时可允许上传的图片类型,成功新增aspx类型4、找个aspxw…

    2022年10月21日
    3
  • microsoft edge无法连接到代理服务器(ie代理服务器错误)

    电脑里有谷歌浏览器也有系统自带的Microsoftedge浏览器,谷歌浏览器可以上网,edge不能上网,出现无法连接到代理服务器的字样。解决方法:方法1、直接根据当前浏览器页面中的“打开代理设置”,(应该是叫这个名字),直接跳到代理界面,把“自动检测设置”按钮打开。重启浏览器。就OK了。 方法2、打开浏览器的设置按钮,在最后一行找到“设置”,点进去后,找到“高级设置”,点击“查看高级设置”,在找…

    2022年4月11日
    681
  • 阶乘算法挑战「建议收藏」

    阶乘算法挑战「建议收藏」计算所提供整数的阶乘。如果使用字母n代表一个整数,则阶乘是所有小于或等于n的整数的乘积。阶乘通常简写成n!例如:5!=1*2*3*4*5=120functionfactorialize(num){vari,mul=1;for(i=num;i>=1;i–){mul*=i;}returnmu…

    2022年7月24日
    12
  • 串口服务器调试助手使用教程,如何配置串口服务器及串口调试的六个技巧

    串口服务器调试助手使用教程,如何配置串口服务器及串口调试的六个技巧串口服务器如何配置,很多用户都不清楚。今天,本文总结和阐述了如何配置串口服务器和串口调试的六个技巧:1.如何设置串口服务器的串口属性,比如波特率参数和数值?点击屏幕上的“设备”单元;手动键入“程序设置”;手动选择“程序”,最后手动输入“串口参数”。2.串口服务器怎么配置?首先要熟悉自己的操作环境和应用配置参数(熟悉各个串口的工作模式,熟悉主要参数中包含的网络参数,设备本身的信息内容,打印服务等相关…

    2022年6月3日
    52

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号