热卡

迷上一个人,迷上一件事。

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

随笔分类 -  WPF-MVVM

摘要:上篇(WPF实现QQ群文件列表动画(一))介绍了WPF实现QQ群文件列表动画的大致思路,结合我之前讲过的WPF里ItemsControl的分组实现,实现起来问题不大,以下是效果图: 其实就是个ListBox,使用了它的分组样式,而分组样式其实就是一组Expander,这就让我有机会使用自定义的... 阅读全文
posted @ 2015-02-28 23:58 热卡 阅读(2020) 评论(5) 推荐(2)

摘要:QQ群大家都用过,先看下目前QQ的群文件列表容器的效果: 细心点大家就会发现,这玩意收缩和展开是带动画的,并不是很僵硬地直接收缩或者直接展开,毫无疑问,如果用WPF实现这样的效果,这里的最佳控件是Expander,WPF的Expander控件自带Collapse和Expand功能,但是用过Ex... 阅读全文
posted @ 2015-01-31 23:59 热卡 阅读(1909) 评论(1) 推荐(3)

摘要:我们在用到ItemsControl时,有时会用到分组,如ListBox,ListView,DataGrid。WPF的ItemsControl可以实现分组,是依托于GroupStyle,以ListBox为例,他的分组效果图为: 以下为前台: 1 2 3 4 ... 阅读全文
posted @ 2014-11-30 23:53 热卡 阅读(7653) 评论(0) 推荐(5)

摘要:起源 Multitouch是一款可用于Win7模拟触摸屏幕的开源软件(关于它的使用介绍),最后一次更新是在11年5月份,我是13年初开始用的,当时开发了一款类似IPhone相册的图片展示触控程序,就是使用的这个模拟器,非常好用。最近大家看了我之前写的几篇博客,要求上代码,我把代码翻了出来,本打算上... 阅读全文
posted @ 2014-10-15 12:43 热卡 阅读(2142) 评论(12) 推荐(2)

摘要:有这么一个问题,WPF在使用异步回调的时候,回调函数需要用到异步函数里产生的一个变量,例如异步函数里查询数据库得到了一个DataTable,如何传递给回调函数呢?【方案一】使用全局变量 很容易想到的是用全局变量,这也是最简单的办法。但是如果我想循环调用呢,例如回调函数判断异步函数执行完之后的D... 阅读全文
posted @ 2014-10-13 12:10 热卡 阅读(1996) 评论(2) 推荐(0)

摘要:WPF的优势在于界面处理,即使是这样,在面对大数据量的时候也免不了界面假死,同一个线程里处理界面跟大数据量,这是不可避免的。解决办法还是有的,可以使用分页加载,虚拟加载,动态加载,增加条件限制... 比较好的解决办法是使用异步+绑定的方式,即绑定控件的数据源,异步获取数据。要解决界面假死,异步... 阅读全文
posted @ 2014-08-12 10:19 热卡 阅读(1848) 评论(0) 推荐(0)

摘要:用过IPhone的都知道,IPhone相册里,当图片放大到一定程度后,手指一放,会自动缩回,移动图片超出边框后手指一放,图片也会自动缩回,整个过程非常和谐、自然、精确,那么WPF能否做到呢,答案是肯定的。 在没有现成的控件的情况下,只有自己做,你肯定想到做动画,WPF触屏开发提供了相应的功能来... 阅读全文
posted @ 2014-05-16 09:11 热卡 阅读(2656) 评论(7) 推荐(4)

摘要:上一篇(WPF触控程序开发)介绍了几个比较不错的资源,比较基础。等到自己真正使用它们时,问题就来了,现把我遇到的几个问题罗列下,大家如有遇到其他问题或者有什么好的方法还望赐教。 问题1.如何获取触控点的个数 当你要在单指触屏和多指触屏时分别做不同的处理时就要用到。如何获取,刚开始我是弄个Li... 阅读全文
posted @ 2014-04-17 14:40 热卡 阅读(3879) 评论(3) 推荐(5)

摘要:迟来的一篇博文,每次都要撞到月末,这个月实在太忙了,除了在公司上班,还接了个单子,用wpf做一个触屏软件,类似iphone的相册功能。先说搭建开发环境吧,我是不可能去买个平板来的,再说基于win7的程序能不能跑在平板上面还不一定,这是我首要解决的问题,使用第三方工具搭建触屏开发测试环境。有人说201 阅读全文
posted @ 2014-03-31 21:38 热卡 阅读(2436) 评论(4) 推荐(2)

摘要:最近用WPF的DataGrid的时候,发现一个很弱智的问题,DataGrid的ItemsSource是绑定了一个属性: 然后取数给这个集合赋值的时候,第一次赋值,就会出现列移位 起初还以为是显卡的问题,结果今天来集成显卡的电脑上也一样出现,具体原因不详,以下是几种解决办法: 1.(首选,有效果)DataGrid的RowHeaderWidth="0",必须赋值为0,不能不赋值,也不能赋其他值。 2.(有效果)绑定的源一开始就要赋值,即至少要有一行数据。 3.(效果不一,有的地方有效有的地方无效)不用绑定,每次获得数据后手动赋ItemsSource的值。 4... 阅读全文
posted @ 2013-11-30 14:07 热卡 阅读(2604) 评论(2) 推荐(0)

摘要:再吐槽一下(我已经无力吐槽)。今天又被资源搞了一天,发现了一个秘密。大家想听就跟随我... 以前写的一个东东,想用mvvm重新实现一下,由于之前的写得很乱,App.xaml里一坨一坨的,就把资源整到一个单独的资源文件里,然后到App.xaml去Merged,这思路是对的。然而当我整完之后,程序... 阅读全文
posted @ 2013-11-14 16:57 热卡 阅读(2577) 评论(9) 推荐(1)

摘要:前几天遇到了一个让我哭笑不得的bug,我写的Wpf程序在Win7里可以运行,到XP、WindowsServer里运行点击某个控件之后闪退,不报任何错,在后台代码里trycatch也捕捉不到任何异常。很明显,这不是后台的代码出的错。当时情况很艰苦,用户在十万八千里之外,他的电脑上也没有调试环境,我... 阅读全文
posted @ 2013-11-12 15:16 热卡 阅读(3601) 评论(17) 推荐(6)

摘要:解决方案的结构一般是三个解决方案文件夹,分别是: Models ViewModels Views当然需要的话可以扩充,如Services、UnitTest等等。 然后每个解决方案文件夹里面包含各自的项目,项目里面的命名空间名自动跟随项目名,而不跟随解决方案文件夹名,而且用解决方案文件夹的... 阅读全文
posted @ 2013-11-09 22:24 热卡 阅读(1266) 评论(1) 推荐(1)

摘要:用MVVM设计模式时可以选择Prism,肯定要用到命令绑定。关于命令传参的文章多如牛毛,陈老师的文章写得很精彩,建议大家去看看。网址如下:http://www.cnblogs.com/chenxizhang/archive/2012/04/14/2446782.html。 我在看完这个视频之后... 阅读全文
posted @ 2013-06-04 22:49 热卡 阅读(1197) 评论(1) 推荐(0)

摘要:MVVM的概念已经在脑子里渗透了一段时间,也试着使用了一段时间,就我个人理解,MVVM所倡导的应该是解耦UI跟数据打交道的那一部分,而纯UI的还是写在CodeBehind里。MVVM是以绑定(绑定数据、绑定命令)来驱动的,脱离了绑定的UI元素就没必要使用MVVM。假设一个窗口里的button作用... 阅读全文
posted @ 2013-06-03 11:15 热卡 阅读(438) 评论(0) 推荐(0)