随笔分类 -  WPF

摘要:哈哈,主要是调用RemoveMenu这个API,所以没什么好说的,直接“干货”吧 阅读全文
posted @ 2008-06-12 19:03 周银辉 阅读(7737) 评论(8) 推荐(0) 编辑
摘要:今天遇到的一个Defect是:应该限定List View中列最小宽度以避免用户将列宽度拖拽为0而导致列消失。WPF的List View没有内置该机制,但我们可以通过监听用户拖拽操作来跟踪列宽并进一步限定用户拖拽,请参见附件中的DEMO。 阅读全文
posted @ 2008-06-03 19:49 周银辉 阅读(9341) 评论(16) 推荐(2) 编辑
摘要:在为Binding提供验证模板时,我们需要使用一个ControlTemplate来为验证控件提供验证反馈,即是当验证失败时在被验证控件的旁边或外围提供一个具有明显视觉效果的UI元素以提醒用户(一个普遍的做法,比如文本框外围出现一个红色线框),这也就是传说中的Validation.ErrorTemplate。按照正常人的思维:ErrorTemplate(红色线框)的可见性应该随着被验证控件(文本框)的可见性的改变而动态改变。但目前事实并非如此,即便是用WPF默认的ErrorTemplate。这让人很抓狂,在用户看来这将是一个可笑而又弱智的错误。算是WPF的一个Defect吧,看看如何搞定它。 阅读全文
posted @ 2008-05-26 11:36 周银辉 阅读(5001) 评论(6) 推荐(1) 编辑
摘要:【WFP疑难】关于WPF的ComboBox中Items太多而导致加载过慢的问题 周银辉 我的一个同事在加载字体列表时遇到了一个让人崩溃的问题:由于系统字体可能较多(可能有好几百项),导致使用ComboBox显示字体列表异常缓慢... 阅读全文
posted @ 2008-05-21 10:12 周银辉 阅读(5841) 评论(1) 推荐(0) 编辑
摘要:我们知道WPF有着比较灵活的布局方式,关于某个控件的坐标,Canvas中的元素最简单,我们可以直接通过其GetLeft()与GetTop方法来获取,但其它布局面板中的,以及存在于不同布局面板中的元素中间的相对位置就比较让我们头疼了,其实有简单方法的,不知你有没发现。 阅读全文
posted @ 2008-03-20 17:29 周银辉 阅读(13133) 评论(7) 推荐(2) 编辑
摘要:项目中有不少的弹出窗口,按照美工的设计其外边框(包括最大化,最小化,关闭等按钮)自然不同于Window自身的,但每个弹出框的外边框都是一样的。对其中一个窗口而言,我们要取消其Window边框,并在右上角摆上三个按钮并编写其点击事件等,但若每个弹出窗口都按照这种方式做一遍就太土了。我们想避免重复劳动,最自然的联想到了“继承”。但WPF给我们找了若干麻烦,被挫败了几次。今天经过2小时的奋战,终于搞定了,分享一下。 阅读全文
posted @ 2008-03-16 17:33 周银辉 阅读(15898) 评论(18) 推荐(5) 编辑
摘要:WPF的布局功能异常强大,当有时我们会有一些奇怪的需求:布局之间的切换。比如动态地将控件在UniformGrid布局和StackPanel布局之间切换。这种需求是有意义的,比如Blend中的DesignWorkspace和AnimationWorkspace切换功能。WPF可以轻松做到这一点。 阅读全文
posted @ 2008-03-06 19:26 周银辉 阅读(4473) 评论(4) 推荐(1) 编辑
摘要:数据绑定、Style,Template,Command,Resource等为逻辑和UI的解耦提供了几条途径,如果你发现你的逻辑代码和UI元素严重地耦合在了一起而带来了不少麻烦,那么可以从上面的几条途径入手。另外,写这篇文字的最主要目的还是引起大家在实际编码过程中对逻辑和UI的解耦的重视。 阅读全文
posted @ 2008-01-30 11:35 周银辉 阅读(5762) 评论(15) 推荐(0) 编辑
摘要:WPF高手:请站出来,Show出来,并联系我 阅读全文
posted @ 2008-01-30 10:30 周银辉 阅读(4706) 评论(24) 推荐(0) 编辑
摘要:谈到多线程,很多人对其可能都不太有好感,觉得麻烦与易出错。所以我们不排除有这样的情况:假设我对“多线程”、“异步”这些字眼潜意识地有些反感,所以在编码过程中能不用就不用,觉得延迟几百毫秒还是可以忍受的,如果系统中这种“可以忍受”的地方很多,最后我们会发现系统的性能变得一团糟,界面总是在“卡”(阻塞)。这里我们讨论一下WPF的多线程模型,以便利用它使我们的UI线程得到解脱 阅读全文
posted @ 2008-01-27 21:52 周银辉 阅读(14866) 评论(12) 推荐(5) 编辑
摘要:Looking to add the newest technology to your arsenal? Here's a chance to challenge yourself and make an impact! So you're already a WPF rockstar? Okay hot shot, here's your chance to prove it to the world! 阅读全文
posted @ 2008-01-25 10:59 周银辉 阅读(1861) 评论(3) 推荐(0) 编辑
摘要:今天看到项目种的一个XXXResource.xaml文件代码有二千多行,这引发了我一些思考:如何组织我们的WPF资源 阅读全文
posted @ 2008-01-21 16:48 周银辉 阅读(7878) 评论(3) 推荐(3) 编辑
摘要:谈谈我理解的WPF团队模型——在UI Designer与Developer之间 阅读全文
posted @ 2008-01-17 12:28 周银辉 阅读(8056) 评论(17) 推荐(4) 编辑
摘要:有朋友遇到这样的一个问题,在WPF中,当Closing一个窗体时,将e.Cancel=true,然后再调用Hide()方法,以便隐藏窗口而不是关闭,但报异常了:“当Window Closing时不能设置Visibility,或调用Show(),Close(),Hide()方法”。OK,本随笔将帮你解决该问题。 阅读全文
posted @ 2008-01-04 11:45 周银辉 阅读(6215) 评论(11) 推荐(0) 编辑
摘要:在我们寻求帮助的时候,最不愿意听到的答复是:很抱歉,在当前版本的产品中还没有实现该功能... 在WPF中显示动态的GIF图像时便遇到了这样的问题,WPF中强大的Image控件却不支持动态的GIF(其只能显示第一帧).当然,我们可以说WPF强大的动画能力,让我们完全有理由抛弃传统的GIF动画,但如某种情况下如果你觉得使用动态的GIF更合适的话(比如QQ表情,因为GIF是利于保存和传输的),没关系,本篇随笔将帮助你解决这个问题. 阅读全文
posted @ 2007-12-23 16:03 周银辉 阅读(25653) 评论(38) 推荐(12) 编辑
摘要:大概两个月前,曾有位朋友问我:如果我想在WPF中将绑定源设置到某个采用单件模式设计的实例上,应该怎么做呢?这是一个不错的问题.可能这段时间比较忙,呵呵,忘记回答这个问题了,昨天拿到伍迷大哥的《大话设计模式》时突然想起这个问题了.今天简要说一下 阅读全文
posted @ 2007-12-13 15:46 周银辉 阅读(4772) 评论(9) 推荐(0) 编辑
摘要:这篇White Paper讲述了WPF中Designer和Developer之间如何建立良好的沟通与协作,如果你对此感兴趣,那么这是目前为止最好的一手资料了. 转载自:http://windowsclient.net/wpf/white-papers/thenewiteration.aspx# 阅读全文
posted @ 2007-12-08 20:05 周银辉 阅读(1406) 评论(1) 推荐(0) 编辑
摘要:正所谓"工欲善其事,必先利其器",WPF的诸多工具和插件可以在这里找到: http://blogs.msdn.com/mswanson/articles/WPFToolsAndControls.aspx 阅读全文
posted @ 2007-12-08 19:46 周银辉 阅读(3585) 评论(2) 推荐(0) 编辑
摘要:本系列随笔将介绍WPF中对在表现层对数据列表进行的"高级加工",比如排序,分组,筛选,导航以及其它自定义视图,并且这不会影响到你的后台数据的实际存储.这是第一部分. 阅读全文
posted @ 2007-12-07 17:45 周银辉 阅读(19528) 评论(4) 推荐(2) 编辑
摘要:这里我们将讨论的是:如何减低控件UI部分与逻辑部分的耦合.让控件支持Theme以及控件资源的存储位置. 阅读全文
posted @ 2007-12-01 22:55 周银辉 阅读(14347) 评论(9) 推荐(7) 编辑