实现Visual Studio 2010一个很简单的很酷的扩展.docVIP

实现Visual Studio 2010一个很简单的很酷的扩展.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基本介绍篇 ??? 在实现这个扩展之前,让我们先弄清楚这个扩展实现什么功能。这个扩展实际上是在你的VS窗口的右上角创建了一个信息框代码。该信息框显示您的源代码的统计信息。这些信息包括: ??? 1、文件的代码行数 ??? 2、文件的字符数 ??? 3、命名空间的个数 ??? 4、字段个数 ??? 5、接口个数 ??? 6、类的个数 ??? 7、函数个数 ??? 8、属性个数 ??? 9、注释的数量 ???10、统计文件的大小(Bytes, KB, MB等)。 ??? 当您键入您的代码,你会看到信息窗口中的数据会即时更新。 ??? 这个信息窗口,是利用可扩展面板。你可以把它看成两个部分,每一个部分都可以根据您的需要展开和折叠。这样,当你不需要它时,你将它可以折叠起来,需要的时候,将它展开。下面演示如何展开/折叠这个控件。 ? ??? 这个控件有三个特殊的状态。第一个状态是一个很小的扩展按钮。如上图的第一部分。只需点击它,就会打开控件右侧的面板,这个面板显示文件的基本数据,如上图的第二部分。这个控件还有一个可扩展面板,如果点击扩展,就会看到下面的面板,其中显示其他的统计数据,如上图的第三部分。 实现篇: ??? 需要软件: ??? 1、 Microsoft Visual Studio 2010 ??? 2、 Visual Studio 2010 SDK ??? 你安装 Visual Studio SDK之后,你的Visual Studio 2010中会多出下面这些模板: ??? 这篇文章中,我们使用模板Editor ViewPort Adornment实现这个扩展,此模板将为你的代码编辑器的带来一个装饰品。? ??? 其实这个扩展包一个WPF用户控件,我把它放进VS的视窗中就成了信息框。它还含有两个类,一个类用来解析代码,获取代码的相关信息;另一个类用来处理自定义编辑器的事件和当页以及加载的时候将WPF控件添加到页面中。 第一步:创建一个Viewport Adornment项目 ??? 我们从Extensibility中选择Viewport Adornment模板创建一个项目。这将生成一个SourceManifest文件和两个类文件。一个是Adornment类本身,另外一个是AdornmentFactory类。 第二步:添加一个WPF用户控件 ??? 右键单击项目,选择添加一个新的WPF用户控件。为了简单起见,我使用了一个用户控件。这个用户控件实际上包含一个Expander控件,设置它的ExpandDirection = Left,它里面又包含了一些TextBlock控件和另外一个Expander ,设置里面的这个Expander的ExpandDirection = Down。看下面的代码(我删除不必要的元素,使其更简单): ?1???Expander?ExpandDirection=Left?Style={DynamicResource?ExpanderStyle1}? ?2????????????x:Name=expMain? ?3???StackPanel ?4?????????????????TextBlock?x:Name=txtNoLines? ?5????????????????????????????Text=No?of?Lines?:?{0}? ?6????????????????????????????Margin=25?25?25?0? ?7????????????????????????????FontSize=12? ?8????????????????????????????FontFamily=Verdana? ?9????????????????????????????FontWeight=Bold? 10????????????????????????????Foreground=Yellow/TextBlock 11?????????????????TextBlock?x:Name=txtNoCharacters? 12????????????????????????????Text=No?of?Characters?:?{0}? 13????????????????????????????Margin=25?5?25?15? 14????????????????????????????FontSize=12? 15????????????????????????????FontFamily=Verdana? 16????????????????????????????FontWeight=Bold? 17????????????????????????????Foreground=Yellow

文档评论(0)

qbjzmxj5904 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档