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

2012年2月14日

摘要: 正常客户端一般需要1个界面:主界面,或者2个界面:登陆界面和主界面。但当主界面内容较多时,加载主界面需要一定的时间,当此时间超过10秒的时候,会让用户感觉出现假死的状态。此时就有必要在登陆和主界面初始化完成前增加一个欢迎界面来过度。此程序,使用wpf,并用了mvvmlight框架,包含3个界面:登陆界面、欢迎界面、主界面。简易流程如下:进入登陆界面-》点击开始-》调用backgroundwork开始对主程序中需要初始化的内容进行初始化,同时显示欢迎界面;在初始化过程中向欢迎界面传递数据报告初始化的进展;完成初始化后关闭欢迎界面,显示主界面。程序中主要使用了c#的BackgroundWorker 阅读全文

posted @ 2012-02-14 10:26 十一郞 阅读(380) 评论(0) 推荐(0) 编辑

2012年2月10日

摘要: 利用wpf的动画功能实现窗口的淡入。app.xaml<Application x:Class="EnergeMonitorEVK.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="MainWindow.xaml"> <Application.Resources> ... 阅读全文

posted @ 2012-02-10 16:42 十一郞 阅读(272) 评论(0) 推荐(0) 编辑

摘要: 又是一个周末,到目前为止,房产信息采集的基本功能可以说是完成了。主要包括功能性 增删改标签; 删除、关注房产信息;非功能性 快捷键; 最小化系统托盘; 工具栏、状态栏等;下面大致说下软件整体的情况和功能:概况 在主画面左侧是标签栏,用于显示自定义的标签和软件默认的标签(我关注的和全部)。 表格上部是工具栏,其操作是针对表格中选中的行的。另外工具栏上最后两个按钮的功能分别是下载和刷新。 画面最下面是状态栏,主要用于显示操作的状态和下载状态。左侧标签栏 标签是用户自定义添加的。用于过来下载下来的数据。用户可以根据自己关注的区域、价格、面积等设置标签的属性,方便筛选。右键侧边栏可以打开增删改标签的菜 阅读全文

posted @ 2012-02-10 16:38 十一郞 阅读(312) 评论(0) 推荐(0) 编辑

摘要: 山寨了一下植物大战僵尸测试地址: 文件名:Debugsg.zip,访问地址:http://www.kuaipan.cn/index.php?ac=file&oid=5452452392344978 1 ///<summary> 2 /// SpritObject.xaml 的交互逻辑 3 ///</summary> 4 public partial class SpritObject : UserControl 5 { 6 //public string Code; 7 public string _m名字; 8 publ... 阅读全文

posted @ 2012-02-10 16:34 十一郞 阅读(332) 评论(0) 推荐(0) 编辑

摘要: Windows SDK 包括一套用于 Windows Presentation Foundation (WPF) 应用程序的性能分析工具,称为“WPF 性能套件”。 使用 WPF 性能套件可以分析 WPF 应用程序的运行时行为,并确定可以应用的性能优化。 WPF 性能套件包括称为分析器和可视化探查器的性能分析工具。 本主题介绍如何安装和使用 WPF 性能套件中的分析器和可视化探查器工具。 本主题包含以下各节:安装 WPF 性能套件启动 WPF 性能套件分析器可视化探查器安装 WPF 性能套件 以下步骤介绍如何安装 WPF 性能套件。 如果您已安装早期版本的 Windows 性能工具包,请... 阅读全文

posted @ 2012-02-10 16:21 十一郞 阅读(1662) 评论(0) 推荐(1) 编辑

摘要: 1. 什么是MVVMMvvm是一种模式(相对于Mvc Mvp等)。Mvvm的最终目的是为了实现数据展现、逻辑处理和数据存储的分离。为了能够实现这一功能WPF提供了3个功能:数据绑定、属性更改通知、事件命令映射机制。1.1 Data Binding通过数据绑定,将View中的控件属性与ViewModel中的属性建立一种连接机制。1.2 INotifyPropertyChanged只有实现了INotifyPropertyChanged接口的属性,在通过set进行赋值时发送变更通知,响应的View中与之建立连接的控件属性值也会发生改变1.3 EventToCommand用于建立View中控件的事件与 阅读全文

posted @ 2012-02-10 15:59 十一郞 阅读(1728) 评论(0) 推荐(0) 编辑

摘要: 之前做了一个横向的滑块效果,《WPF:CheckBox滑块效果》,其实我觉得那个不好看,今天又做了一个竖向的玩。 1 <Style TargetType="{x:Type CheckBox}"> 2 <Setter Property="Foreground" Value="White"/> 3 <Setter Property="Padding" Value="2"/> 4 <Setter Property="Template"> 阅读全文

posted @ 2012-02-10 15:51 十一郞 阅读(446) 评论(0) 推荐(0) 编辑

摘要: 看看WPF Cursor类的两个构造函数吧:public Cursor(Stream cursorStream) public Cursor(string cursorFile) 恩, 均要求用 ani 或 cur, 无语啊,我要使用一张普通图片呢? 或者甚至是在程序内存中动态生成一张图片而生成鼠标指针呢?于是乎, 我们可以折腾出如下代码, 它可以从由一张图片来创建鼠标指针: ///<summary> /// This class allow you create a Cursor form a Bitmap ///</summary> internalclass Bi 阅读全文

posted @ 2012-02-10 15:49 十一郞 阅读(357) 评论(0) 推荐(0) 编辑

摘要: WPF虽然很美观,效果很炫,但是对资源的消耗也很大,尤其是初次接触WPF的人,因为很多地方虽然实现了想要的效果,但是由于经验问题,所以也会造成很大的资源浪费,好的程序,需要更好的优化。虽然可能只是节省了很少的一点资源,但是对整体程序运行的速度与稳定性来说,也许就起到了决定性的作用;每个地方都能做到一点优化,那么在成个程序中,优化的效果就会很明显,流畅、稳定,才是一个程序的健康状态。在MSDN上看到的这个说明“对象行为”,上面说到,每一个SolidColorBrush占用的大小,当冻结的时候,需要212字节,未冻结的则需要972字节,即使单位很小,但是差距还是非常大的,通常我们写程序的时候,这类 阅读全文

posted @ 2012-02-10 15:46 十一郞 阅读(956) 评论(0) 推荐(0) 编辑

摘要: 本篇博客主要说明如何使用 UI Virtualization(以下简称为 UIV) 来提升 OEA 框架中 TreeGrid 控件的性能,同时,给出了一些学习 UIV 的资源。问题 最近对 OEA 的 TreeGrid 控件进行了比较大的改造,并使用新的控件来替换了系统中所有的 DataGrid 控件。新的 TreeGrid 控件实现了很多新的功能,(之后会写一篇文章说明),但是最后遗留了一个问题:由于使用它替换了原来的 DataGrid,而 DataGrid 默认是支持 UI Virtualization 的,当有些界面的数据量比较大时,没有支持 UIV 的TreeGrid 控件就显得有些力 阅读全文

posted @ 2012-02-10 15:26 十一郞 阅读(721) 评论(0) 推荐(0) 编辑