透视WPF 应用程序的利器
当我们看到一些设计新颖的网站时,可以借助浏览器自带的Inspector 工具或插件方便的浏览网站布局结构及逻辑。如果是WPF 应用程序能否看到控件的架构方式呢?本篇将介绍两款工具Snoop 和WPF Inspector 可用来窥探WPF 应用程序内部结构。
Snoop
打开Snoop 程序,它是以一个工具栏形式出现(如下图)。

接下来打开一个经典WPF 应用程序Expression Blend 4(下文简称:EB4),点击“刷新”按键即可看到Snoop 已经捕获到EB4。

点击“Snoop”(望远镜)按键,进入Snoop 捕获界面。与IE8 中的Developer Tools 效果相同,在左侧控件树列表中选择的内容会通过红色边框体现在WPF 应用程序中。

浏览WPF 程序控件属性,同时可以设置断点进行Debug。

比较欣赏Snoop 的一个功能是2D/3D 结构显示效果,点击工具栏中的“放大镜”按键即可浏览,这样看起来控件结构是不是形象了很多。

WPF Inspector
接下来再看看WPF Inspector,打开程序后WPF Inspector 会自动检测到当前启动的WPF 应用程序。

选择EB4 进入捕获界面,按住“Ctrl”键,并在EB4 中移动鼠标可以即时捕捉WPF 应用程序控件,同时显示其相关属性。

也可以按Logical 方式浏览程序控件结构。

查看控件的Trigger 事件。

WPF Inspector 还提供了实时修改WPF 应用程序控件属性功能,如下图所示修改了“File”菜单的背景颜色。

有了这两个工具就能够方便快捷的了解一些好的WPF 应用程序是如何架构和开发的,同时也可以进一步提高自己的WPF 水平。
透视WPF 应用程序的利器的更多相关文章
- 细数改善WPF应用程序性能的10大方法
WPF(Windows Presentation Foundation)应用程序在没有图形加速设备的机器上运行速度很慢是个公开的秘密,给用户的感觉是它太吃资源了,WPF程序的性能和硬件确实有很大的关系 ...
- 【C#】1.3 WPF应用程序学习要点
分类:C#.VS2015 创建日期:2016-06-14 使用教材:十二五国家级规划教材<C#程序设计及应用教程>(第3版) 一.要点概述 <C#程序设计及应用教程>(第3版) ...
- WPF 获取程序路径的一些方法,根据程序路径获取程序集信息
一.WPF 获取程序路径的一些方法方式一 应用程序域 //获取基目录即当前工作目录 string str_1 = System.AppDomain.CurrentDomain.BaseDirector ...
- WPF 之 WPF应用程序事件
当新建一个wpf应用程序,会自动生成一个App.xaml和MainWindow.xaml文件. 其中 App.xam 用来设置Application,应用程序的起始文件和资源及应用程序的一些属性和事件 ...
- 11、创建不使用XAML的WPF应用程序
首先新建一个空的项目,然后添加一个类,引用一下程序集: PresentationCore.dll PresentationFramework.dll WindowsBase.dll namespace ...
- c++程序开发利器
c++程序开发利器 vc6visual stdio系列都很好,个人最喜欢vc6,主要原因是快捷,classview和wizardbar功能强大,其他vs秒杀其他的vs windbgWinDbg是在wi ...
- Mac OS X 程序员利器 – Homebrew安装与使用
Mac OS X 程序员利器 – Homebrew安装与使用 Homebrew安装与使用 什么是Homebrew? Homebrew is the easiest and most flexible ...
- WPF发布程序后未授予信任的解决办法
WPF发布程序后未授予信任的解决办法 基于浏览器的WPF应用程序由于需要比较高的操作权限,所以在项目的安全性属性中选择了“这是完全可信的应用程序”选项.可是,在发布部署后,在其他电脑上打开xbap文件 ...
- 【ASP.NET Web API教程】3.3 通过WPF应用程序调用Web API(C#)
原文:[ASP.NET Web API教程]3.3 通过WPF应用程序调用Web API(C#) 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的 ...
随机推荐
- idea报错could not autowired .但是可以正常运行
转 http://www.cnblogs.com/softidea/p/5763285.html 解决办法: File-->Project Setting-->Facets-->Sp ...
- C# 获取当前目录上一级目录
string path="D:\AA\BB\CC"; Directory.SetCurrentDirectory(Directory.GetParent(path).FullNam ...
- Method and apparatus for verification of coherence for shared cache components in a system verification environment
A method and apparatus for verification of coherence for shared cache components in a system verific ...
- 视音频数据处理入门:RGB、YUV像素数据处理【转】
转自:http://blog.csdn.net/leixiaohua1020/article/details/50534150 ==================================== ...
- [TL-WR845N V4] 无线桥接(WDS)设置 + 迅捷桥接配置
官方文章转载备忘: http://service.tp-link.com.cn/detail_article_697.html?spm=a220o.1000855.0.0.eTMbmU 迅捷桥接配置: ...
- LeetCode OJ--Construct Binary Tree from Inorder and Postorder Traversal *
http://oj.leetcode.com/problems/construct-binary-tree-from-inorder-and-postorder-traversal/ 知道二叉树的中序 ...
- npm 安装出现 UNMET DEPENDENCY 的解决方案
npm imuzhicloud@0.2.2 E:\com\muzhicloud_make_web+-- UNMET PEER DEPENDENCY react@15.4.2+-- react-dnd@ ...
- 数据库SQL Server 2014 设置自动备份(维护计划和作业)
前言 1.SQL Server数据库自动备份可以有两种操作 第一种是在SQL控制台下的服务器名称展开,展开“管理”--选择“维护计划”,右键“新建维护计划”即可. ...
- Hibernate游记——装备篇《二》(基础配置示例)
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hi ...
- 洛谷—— P2880 [USACO07JAN]平衡的阵容Balanced Lineup
https://www.luogu.org/problemnew/show/P2880 题目背景 题目描述: 每天,农夫 John 的N(1 <= N <= 50,000)头牛总是按同一序 ...