校线工具项目总结

WPF界面设计项目总结

1.项目总体过程

最近在做一个校线的小工具,Button Lable TextBox CheckBox ComboBox 等小控件一组合,再用WPF中MVVM新的架构,在ViewModel中实现背后的控制逻辑,一个小工具的雏形就OK了。开发调试后,Beta版本发布。

一周后用户普遍反映,界面不友好,使用不方便,“我的操作完成状态我也不知道”,老工具的啥啥功能怎么没了?加上工具对于老环境支持度不好,新工具的推广效果很差。

认真反思后,在两个多月后,我决定对新工具根据用户反馈,大力调整,除了尽量保留老工具所有的功能外,尽量把用户的交互做好,让用户真正使用起来方便,不需要指导书。

2. 项目过程难题

做完后,项目推广失败,总结了下,主要有以下两个方面的原因。

2.1 对环境的支持不完善

当时项目曲折,自己感觉是个小项目,就没有写项目程序设计书,结果就把环境的支持考虑到不多,使用小工具,需要升级环境,结果很少有用户主动去升级环境,最后拖累两个月的推广。

两个月后,这个问题,我用了半天就搞定了。

2.2 与用户交互的不友好

我的小工具的核心缺陷,就是没有对测试数据的实时打印,让用户可以很方便的查看到自己操作的结果。说的更简单点,就是怎么清晰的把数据打印在操作界面上,并提供必要的提示。

这个问题困扰了我一个多星期。

3.WPF界面预备知识

3.1 界面设计

界面设计是非常吸引用户的一个方面。好的界面设计,一方面提高用户使用的效率,用户的认可度,同时,另一方面也可以减少开发人员的维护工作。

好的界面设计,是建立在用户对业务的理解上,对用户习惯的把握上。

3.2 布局控件介绍

WPF的布局控件都在System.Windows.Controls.Panel这个基类下面,使用 WPF提供的各种控件在WPF应用程序中界面进行布局,同时对各种子控件(如按钮、文本框,下拉框等)进行排列组合。
WPF布局控件

3.3 Grid控件

Grid顾名思义就是“网格”,它的子控件被放在一个一个实现定义好的小格子里面,整齐配列。 Grid和其他各个Panel比较起来,功能最多也最为复杂。

4.用户交互之我的解决思路

其实给我解决问题的时间很少,最多两天的时间,我不断的翻阅资料,并参考了几个老工具的界面方式。

4.1 阶段一 寻找和老工具的相类似的控件直接替换

老工具使用的是WCF写的,使用的控件是ListView,在WPF中,需要绑定行、列的数据,这个地方比较难懂,利用周末的时间,我终于写出来一个Demo,结果还是感觉不太好用(网上的教程太少)。

4.2 阶段二 使用网络上教程很多的DataGrid 控件实现

为了让控件使用更容易上手,我选择了大家都在使用的DataGrid控件,网络上的教程很多,特别是英文的版本,非常详细(这一次,我又深深感受到了学好英文的巨大优势,让自己的编程能力和世界接轨。。。。),自己学习了一上午,控件的使用基本搞定,准备移植到工具当中时,仔细思考了下,同时又和同事讨论了下,发现这个控件对于很多列数据的显示不太适合,因为他的每一列都和程序中的属性绑定,我有100多列,我就要定义一百多的属性,感觉好傻。。。

4.3 阶段三 放弃带列表的打印,该日志打印,使用外部DLL—log4net

项目越来越紧张,我直接找了一个开源的LOG的实现,结果使用起来了也很费力,一般的例子都没有直接绑定到界面上显示,而是在后台记录日志。正好其他项目有使用RichTextBox的例子,我直接放弃了log4Net。

4.4 阶段四 使用简单的 TextBox、RichTextBox

之前的项目使用的RichTextBox是使用的WinForm,WPF对RichTextBox进行了重写,很多属性和方法都变了,对这个我又研究了一天,终于搞定。

5. 校线工具过程改进

5.1 与串口控制交付项目的比较

校线工具比串口交付项目复杂度要低,然而这个项目多了界面设计,这是个全新的领域,对我来说。

界面设计就要首先考虑用户的使用习惯,做好初步的规划。这个也属于项目总体设计的一部分。

“不仅知道开头,知道如何结束同样也非常重要。”

5.2 总体流程控制掌握

项目遇到难题如何解决?求助?最直接的是,还是提前提高自己的技术能力,不论什么时候。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值