马桶里的肌肉

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

    最近在做一个数据分析的项目,需要用到图表,MSchart虽然效果不错,但是交互性太差,无法缩放、分页、不支持鼠标事件需要自己写事件很麻烦,于是到网上搜了一下,很多javascript、swf的控件,比如FusionChart,ChartLet,看起来都还不错,但是对于winform的支持都比较寒酸,最后居然在另外一个博客里发现了现在正在用的Visifire,唯一的缺点就是收费的,免费的有几个大大的水印很是烦人。

   由于项目需要给领导展示,总不能就挂几个大水印在那里,于是在网上找了一下,发现5.0.4版本有人发过破解方法,大概是通过重写LoadWm()方法,可以去掉右上角的固定水印。现有版本是5.0.6,不知道有没有修补,经过测试依然可行。

    

    但是,顶上出现的版本提示依旧很烦人,经过测试,发现这是一个TextBlock,于是通过断点调试,找到这个TextBlock所在,删掉,大功告成!

   下面是代码:

 

 1 Public Sub CreateChart()
 2         ' Create a new instance of Chart
 3         Dim chart As New Meee
 4         chart.Width = 500
 5         chart.Height = 300
 6         chart.AnimationEnabled = False
 7 
 8 
 9         AddHandler chart.Rendered, AddressOf chart_rendered
10 
11     End Sub
12 
13  Public Class meee
14         Inherits Chart
15 
16 
17         Protected Overrides Sub LoadWm()
18 
19 
20         End Sub
21 
22         Protected Overrides Sub OnWatermarkPropertyValueChanged(ByVal value As Boolean)
23 
24 
25         End Sub
26 
27 
28     End Class
29 
30 
31     Public Sub chart_rendered(ByVal sender As Object, ByVal e As EventArgs)   '破解代码
32         Dim c As Meee = sender
33         Dim legend = c.Legends(0)
34         Dim root As Grid = legend.Parent
35 
36         root.Children.RemoveAt(9)
37         root.Children.RemoveAt(9)
38 
39     End Sub
40  

 

 

 
posted on 2013-03-14 07:55  马桶里的肌肉  阅读(337)  评论(0编辑  收藏  举报