摘要: FSharpChart是类型System.Windows.Forms.DataVisualization.Charting的F#友好包装, 使之可以再F# Interactive 中交互表现数据。FSharpChart的最新版本是FSharpChart0.6,是微软的Carl Nolan's提供的。在MSDN的Chart Controls章节里可以浏览到更多FChart Controls的相关信息。当然有关FSharpChart的更多的信息,你也可以亲自去浏览Carl Nolan’s的博客。最新版本的提供了,以下新的功能:剪切板的另存为功能属性改变事件支持3D图表BoxPlot图表的数 阅读全文
posted @ 2012-08-03 15:52 墨梅 阅读(3044) 评论(4) 推荐(2) 编辑
摘要: 最近3周忙于学习Prism,留下些学习笔记.....最终发现,还是必须得,亲自仔细阅读官方指导,一种不错的学习方式。要点1: 在CAL中,模块是实现Imodule接口的类,此接口仅包含一个方法,称为Initializae。如果把引导程序看做应用程序的Main方法,那么Initialize方法就是每个模块的Main方法。要点2: 对于Module中的Initialize方法中,提到的_contianer 和 _regionManager的作用需讨论一下。如果接口并未定义他们,那么他们从何而来?我们是否需要将逻辑硬编码到模块中以找出这些依赖关系?幸运的是,后一个问题的答案是“否”,此时,IoC容器 阅读全文
posted @ 2012-07-24 09:26 墨梅 阅读(5883) 评论(0) 推荐(1) 编辑
摘要: 由于ComboBox,ListBox等控件没有实现ICommandSource接口,所以不支持在XAML中进行Command绑定,下面的一段代码就是,对ComboBox实现对ICommandSource接口的实现:public class ComboBoxWithCommand : ComboBox, ICommandSource{ private static EventHandler canExecuteChangedHandler; public static readonly DependencyProperty CommandProperty = DependencyPr... 阅读全文
posted @ 2012-07-23 14:34 墨梅 阅读(6630) 评论(5) 推荐(2) 编辑
摘要: F#与WPF 实现MVVM之二作者:墨梅时间:2012年7月23日在上一篇中,初步介绍了:使用F#采用多语言方式,实现MVVM的WPF程序。在这篇中,我将继续这个主题,多语言方式实现MVVM:View采用C#+XAML实现(因为VS中对C#的具有很好的很优秀的支持,F#这方面还是很匮乏的),ViewModel层和Model层使用F#实现,据说可以使代码量减到原来的四分之一哦。这个示例主要是:计算一个员工的工资:一个人的工资= 工作时间(月) × 月工资 + 福利当工作时间(月)、月工资、福利中任意一个发生改变的时候,自动计算一个人的工资。当然,在这些元素改变时,计算工资之前,需要对这 阅读全文
posted @ 2012-07-23 10:26 墨梅 阅读(1808) 评论(0) 推荐(1) 编辑
摘要: 下面主要介绍如何使用多语言方法实现WPF的MVVM设计模式。我计划分为三篇来介绍多语言方法实现MVVM模式,这是第一篇。 对Visual Studio家族而言,F#是个新成员,但是它的简洁深深地吸引了我。F#在简化并行和异步编程、数据处理和金融建模等复杂问题声誉卓越,而且越来越受欢迎。F#构建MVVM应用程序有两种常用的方法,一种是全F#语言方法,另一种是多语言方法,即用C# + Xaml构建View层,F#负责ViewMode 和Mode层。对于第一种,使用VS的扩展模板很容易办到。我这里只说第二种方法,当然这种方法也是F#团队推荐的方法。其次,C#中针对WPF和Silverlight... 阅读全文
posted @ 2012-07-13 10:51 墨梅 阅读(2626) 评论(2) 推荐(3) 编辑
摘要: 现在用一种不同的方式,使用F#创建WPF窗体程序。 首先,使用F#的模板创建一个F#的控制台程序: 然后添加以下引用: 添加相应的命名空间: open System open System.Windowsopen System.Windows.Controls 声明一个TextBox控件,并设置Text为“Hello world!”,并将该控件作为窗体的Content,并设置窗体的Title为“Hello world”[<EntryPoint;STAThread>]let Main args = let tb = TextBox(Text="He... 阅读全文
posted @ 2012-07-11 15:42 墨梅 阅读(3478) 评论(0) 推荐(0) 编辑
摘要: 责任链模式(在F#中的实现:) 以下示例代码:确保人的年龄在18到65之间,体重不超过200,身高大于120 type Record = { Name : string; Age : int; Weight: float; Height: float;} let ChainOfResponsibility() = let validAge (record:Record) = record.Age < 65 && record.Age > 18 let validWeight (record:Record) = ... 阅读全文
posted @ 2012-07-09 15:55 墨梅 阅读(544) 评论(0) 推荐(0) 编辑
摘要: F# WPF Form – the basicsI was listening to Dot Net Rocks show#560about F# and during the podcast Richard Campbell brought up a good point with regards to F# and a GUI. In essence what I understood his point to be was that until one could write an end to end application in F#, it would be a hard sell 阅读全文
posted @ 2012-07-09 09:33 墨梅 阅读(1175) 评论(0) 推荐(0) 编辑
摘要: 由于需要,做了一个WPF的无边框的自定义的Button,代码如下: 运行效果如下:常态:当鼠标经过时的状态:在这个基础上,您可以做出更多的效果(仿照这个是360软件管家右边栏实现的效果)如:我自己已经实现了这个种效果,只是加了一点C#后台代码,辅助控制动画的,你自己可以尝试下,挺好玩的哦。。。呵呵下面是实现效果的代码:View Code <Style x:Key="MainButtonStyle" TargetType="Button" BasedOn="{StaticResource BaseButtonStyle}"> 阅读全文
posted @ 2012-07-06 11:34 墨梅 阅读(10977) 评论(5) 推荐(2) 编辑
摘要: Bingmap for WPF control 没有直接提供中国地图,但是通过必应地图(中国)知道,时存在必应中国地图,经过一番百度后,找到解决办法。通过添加新的地图图层来解决问题,用新的图层覆盖原有的地图,新图层中显示中国地图。不说了,代码解决大部分问题(代码如下): //其中map为必应地图for WPF 控件MapTileLayertileLayer; private void AddTileOverlay() { // Create a new map layer to add the tile overlay to. tileLayer = new MapTileLayer(); / 阅读全文
posted @ 2012-07-04 19:32 墨梅 阅读(4551) 评论(1) 推荐(2) 编辑
摘要: 由于WPF中没有鼠标的双击事件,因而只能通过MouseDown事件来模拟。当连续的两次MouseDown事件的时间间隔,没有超过一个设定的时间阈值时,就计算为一个双击事件,并作相应的处理。利用WPF中System.Windows.Threading.DispatcherTimer来做定时处理,不建议使用System.Timers.Timer。当定时事件发生时,就重置计数器为0,定时,单击事件中对计数器加1,并计数器是否为2的整数倍(即是否在设定的时间间隔内,发生两次MouseDown 事件)。如果是则作为双击事件处理。int i = 0;private void Grid_MainTitle_ 阅读全文
posted @ 2012-06-29 20:05 墨梅 阅读(13505) 评论(4) 推荐(0) 编辑
摘要: Acronis Disk Director,是Acronis公司出品的一款功能强大的磁盘分区工具。已被实践证明是同类软件中的“佼佼者”(笔者经过比较筛选,说其“最好”当之无愧):通过它可以轻松分割磁盘分区并改变分区容量大小,关键是能够做到“无损操作”不会遗失任何数据。近日,官方推出了支持Windows 7/Vista/XP的最新版本V 11.0.0.216。现提供这个最新版本的官方原版下载 + 有效注册码如下——原版下载:http://ru1.download.acronis.com/sl/b3Dh6vpCWE(Vgkw5lPdp1vtARgw1KFI7(IKVUBYvH90/p/ADD11H 阅读全文
posted @ 2012-04-21 08:40 墨梅 阅读(2498) 评论(0) 推荐(0) 编辑
摘要: 一, 需要在Silverlight中导出Excel文件,累死了N个脑细胞,忙活了数天,终于是搞定了,哈哈。 很常见的方法就是,在Silverlight中提升浏览器的信任级别,直接调用COM+组件导出EXCEL文件。 dynamic excel = AutomationFactory.CreateObject("Excel.Application"); dynamic workbook = excel.WorkBooks; workbook.Add(); dynamic sheet = excel.ActiveSheet; dynamic _cell = ... 阅读全文
posted @ 2012-04-01 15:36 墨梅 阅读(5464) 评论(2) 推荐(3) 编辑
摘要: Silverlight DataGrid 多重表头实现时间:2011-11-04 23:51来源:CSDN作者:taomanman点击:383次controls:ChildWindowx:Class= FXHS.ShowSSXQList xmlns= http://schemas.microsoft.com/winfx/2006/xaml/presentation xmlns:x= http://schemas.microsoft.com/winfx/2006/xaml xmlns:sdk= http://schemas.microsoft.com/winfx/2006/xaml/presen 阅读全文
posted @ 2012-03-19 09:54 墨梅 阅读(2709) 评论(0) 推荐(0) 编辑
摘要: ///CString ---to---string (网上有许多其他办法,但在VS2005,就是不通过) CString = _T("CheDan"); std::string s= (CStringA)ID;///string ---to-----LPWSTR wstring widstr; std:string s("DanTeng"); widstr = std::wstring(s.begin(), s.end()); lvItem.pszText=(LPWSTR)widstr.c_str(); 阅读全文
posted @ 2011-11-07 18:03 墨梅 阅读(9725) 评论(0) 推荐(0) 编辑