博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[WPF学习资料] WPF简介
阅读量:6299 次
发布时间:2019-06-22

本文共 1858 字,大约阅读时间需要 6 分钟。

Windows Presentation Foundation (WPF) 是下一代显示系统,用于生成能带给用户震撼视觉体验的 Windows 客户端应用程序。使用 WPF,可以创建广泛的独立应用程序以及浏览器承载的应用程序。WPF 的核心是一个与分辨率无关并且基于向量的呈现引擎,旨在利用现代图形硬件的优势。WPF 通过一整套应用程序开发功能扩展了这个核心,这些功能包括 可扩展应用程序标记语言 (XAML)、控件、数据绑定、布局、二维和三维图形、动画、样式、模板、文档、媒体、文本和版式。

对于一个ASP.NET的开发人员来说,WPF的编程方式应该很熟悉了;WPF让界面和核心代码脱离,这个和ASP.NET的编程有所相似。在ASP.NET用HTML来呈现用户体验,而在WPF中使用XAML来呈现。无论是HTML还是XAML都是可扩展性标记语言XML的一个扩展。为了支持某些更强大的 WPF 功能并简化编程体验,WPF 包括了更多编程构造,这些编程构造增强了属性和事件:依赖项属性和路由事件

应用程序

在WPF中可以分为独立的应用程序和浏览器应用程序。其中独立的应用程序和WindowForm一样,可以使用MessageBox等等方法;而浏览器应用程序,借助于浏览器IE来运行程序,称为 XAML 浏览器应用程序 (XBAP)。

WPF 应用程序既可以承载于 Internet Explorer 7 中,也可以承载于 Internet Explorer 8 中。WPF 提供了以下两个选项作为替代导航宿主:

  • Frame,用于承载页面或窗口中可导航内容的孤岛。

  • NavigationWindow,用于承载整个窗口中的可导航内容。

 WPF 控件一览

此处列出了内置的 WPF 控件。

  • 按钮:Button 和 RepeatButton。

  • 对话框:OpenFileDialog、PrintDialog 和 SaveFileDialog。

  • 数字墨迹:InkCanvas 和 InkPresenter。

  • 文档:DocumentViewer、FlowDocumentPageViewer、FlowDocumentReader、FlowDocumentScrollViewer 和 StickyNoteControl。

  • 输入:TextBox、RichTextBox 和 PasswordBox。

  • 布局:Border、BulletDecorator、Canvas、DockPanel、Expander、Grid、GridView、GridSplitter、GroupBox、Panel、ResizeGrip、Separator、ScrollBar、ScrollViewer、StackPanel、Thumb、Viewbox、VirtualizingStackPanel、Window 和 WrapPanel。

  • 媒体:Image、MediaElement 和 SoundPlayerAction。

  • 菜单:ContextMenu、Menu 和 ToolBar。

  • 导航:Frame、Hyperlink、Page、NavigationWindow 和 TabControl。

  • 选择:CheckBox、ComboBox、ListBox、TreeView、RadioButton 和 Slider。

  • 用户信息:AccessText、Label、Popup、ProgressBar、StatusBar、TextBlock 和 ToolTip。

 布局系统通过基本 WPF 类公开给子控件。对于通用的布局,如网格、堆叠和停靠,WPF 包括了几个布局控件:

  • Canvas:子控件提供其自己的布局。

  • DockPanel:子控件与面板的边缘对齐。

  • Grid:子控件按行和列放置。

  • StackPanel:子控件垂直或水平堆叠。

  • VirtualizingStackPanel:子控件被虚拟化,并沿水平或垂直方向排成一行。

  • WrapPanel:子控件按从左到右的顺序放置,如果当前行中的控件数多于该空间所允许的控件数,则换至下一行。

 布局对于一个应用程序来说是相当重要的,这个和ASP.NET中的HTML呈现一样。根据布局中提供的一些控件的功能,合理选择控件才能够事半功倍!

本文转自网魂小兵博客园博客,原文链接:http://www.cnblogs.com/xdotnet/archive/2009/01/09/wpf_1.html,如需转载请自行联系原作者

你可能感兴趣的文章
rpmfusion 的国内大学 NEU 源配置
查看>>
spring jpa 配置详解
查看>>
IOE,为什么去IOE?
查看>>
Storm中的Worker
查看>>
dangdang.ddframe.job中页面修改表达式后进行检查
查看>>
Web基础架构:负载均衡和LVS
查看>>
Linux下c/c++相对路径动态库的生成与使用
查看>>
SHELL实现跳板机,只允许用户执行少量允许的命令
查看>>
SpringBoot 整合Redis
查看>>
2014上半年大片早知道
查看>>
Android 6.0指纹识别App开发案例
查看>>
正文提取算法
查看>>
轻松学PHP
查看>>
Linux中的网络监控命令
查看>>
this的用法
查看>>
windows下安装redis
查看>>
CentOS7 yum 安装git
查看>>
启动日志中频繁出现以下信息
查看>>
httpd – 对Apache的DFOREGROUND感到困惑
查看>>
分布式锁的一点理解
查看>>