接上篇“基于Silverlight的精简框架之解析”,最近研究了ExtJs,发现其虽然外观很酷,但是开发难度比较大,大量JS不易维护,于是乎想起基于EasySL框架,实现ExtJs的部分功能。比较起来SL的UI和异步机制很容易实现,特别是SL类似于winform的控件开发方式,给开发丰富的RIA提供强大的支持。
一、此次主要是展示一个后台管理UI:
1. 登陆、列表、分页、添加、修改、删除,使用了双向绑定机制,界面元素和实体进行绑定,自动对界面进行取值赋值;
2. 其异步数据交互应用了此框架(EasySL)的简洁请求方式,只需传方法名和参数名到有同样方法签名的业务层,至于数据层暂时用的是假数据,推荐用db4o、linq to sql或SubSonic。
二、本次升级主要加入了一些常用的实用控件:
1. ImageButton: 你只需赋值normal、hover、click、enable四张图片即可
2. VisualPager: 原理和传统分页控件差不多,实现了比较久,主要是翻页的效果
3. Alert: 使用Window.Alert(string msg)
4. Confirm: 使用Window.Confirm(string msg, OnConfirm onConfirm)
5. Loading: 使用Window.ShowLoading(string msg)和Window.HideLoading()
6. DialogPanel: 使用Window.ShowOpPanel(string title, UserControl panel, OnSubmit onSubmit)
7. DragHelper: 提供拖拽支持
三、一些实现方法还不是很好,后面将完善代码,欢迎大家加入到SL的开发行列一起讨论
1. 预览地址:http://hz88a8.hz88a.wxdlpt.com/EasySL.htm
2. 且源代码:https://files.cnblogs.com/guozili/EasySL.zip
四、附:应用截图
1.用户登陆
2.验证用户(loading control)
3.加载第一页数据
4.产品列表(visual pager control)
5.确认删除(confirm control)
6.添加产品(dialog panel control)
7.升级产品(two-way bind)
8.警告(Alert control)