用.Net开发3年,主要接触资产管理,生产流程,质量追溯,.Net在这方面还是很靠谱的。2月低接触FineUI,那时版本是3.0+,第一眼让我想起了ExtJs,其实就是用.Net封装了ExtJs让ASP.NET开发更有效率,实际用起来确实是这样。

ASP.NET的回发确实让人头疼,很多东西即使结合前台Js也用的很别扭,而ExtJs在.Net开发环境下又很复杂完全是另一种语言,即使后来有ExtJs For .Net也用不好,结果是没用起来。FineUI处理回发的机制刚好结合了ExtJs和 ASP.NET的优点,让开发变的灰常简单,反正我是这么认为。

好的软件产品要包括以下几点。功能,功能强大能满足实际的各种复杂需求这是最基本的;简易,分两方面一是程序开发要快速简单,减少开发周期,软件成本降低,好的框架必不可少,二是软件操作快捷用起来直观方便;美观,好的UI让人享受,不了解软件的人甚至也有要操作的欲望。我不敢过于抬高FineUI框架,我只能说基本能满足简易和美观两点,我用着足够了。

3月正式启用FineUI框架升级产品。开发中亦遇到了许多问题,大大改变了原来的代码逻辑,不用再处理讨厌的回发,前台JS省了一大片,而且代码全部开源,细心研究也可以学到很多东西,甚至改出适应自己的控件。FineUI集成了很多ASP.NET常用的控件,但毕竟是在ExtJs上搭的所以前台渲染上和ASP.NET控件无甚大关系。SO,记录分享一下开发过程中遇到和解决的问题。让更多的人脱离苦海。教程要自己去看,我不教,我不是大师,不要高看我,我是CodingFarmer别喷我。实际开发环境是FineUI 4.0.4

1.实例代码中GetClientIDS方法

没有什么必要,开始我也没看清,其实就是输出个控件的ClientID,ClientID会在HTML呈现时自动生成,前台的控件写上 ClientIDMode="Static" 就能在前台找到直接F(‘控件ID’)即可。

2.建议使用页面及配置及每个页加上<%@ Register Assembly="FineUI" Namespace="FineUI" TagPrefix="f" %>

沾行代码并不费力,我的项目比较大有的功能不能避免FineUI和ASP.NET页面混合用所以不写成站点及配置,可以兼容多个组件。在FineUI页面下混用ASP.NET控件也不提倡,除非有特殊功能。

3.编辑页面回发

编辑页面后自动刷新父页面列表,__doPostBack得到了解放。直接上代码

 function ActiveWindowBack() {
var activeWindow = F.wnd.getActiveWindow();
activeWindow.window.__doPostBack('', 'SaveMs_' + F('_hidPageIndex').getValue() + '_' + F('_hidSelectIndex').getValue());
}

getValue()是得到值,activeWindow.window就是上级页面的意思,后台保存完数据后即可提示和刷新

Alert.Show(resultMsg, "提示", "ActiveWindowBack();");

  Alert.Show()输出的是个Div,在点击弹出提示的确认后执行前台ActiveWindowBack方法

父页面接收

01.if (GetRequestEventArgument().IndexOf("SaveMs") >= 0)
02. {
03. string SaveMs = GetRequestEventArgument();
04. BindQueryUserInfo();
05. try
06. {
07. Grid1.PageIndex = Convert.ToInt32(SaveMs.Split('_')[1]);
08. Grid1.SelectedRowIndex = Convert.ToInt32(SaveMs.Split('_')[2]);
09. }
10. catch { }
11. }

  

接受方法里接收了参数,执行grid绑定和选择页以及行。要在IsPostBack里执行。FineUI框架里只要你不刷新他就一直是那个状态再此方法里父页面其他信息不动只有grid重新绑定了,速度还可以,只要模板列不太多,基本看不出来。

下次将介绍页面排版技巧灵活运用FingUI.Grid及常用Js,后续还有各种Iframe页面交互。

ASP.NET-FineUI开发实践-1的更多相关文章

  1. FineUI开源版(ASP.Net)开发实践-目录

    点我订阅 目前所有博客的截图,方便离线观看,点图片 FineUI初学手册 下载,实例项目搭建 FineUI初学手册-部分JS整理 部分JS整理 ASP.NET-FineUI开发实践-1 实际开发环境是 ...

  2. FineUI开发实践-目录

    点我订阅 目前所有博客的截图,方便离线观看,点图片 FineUI初学手册 下载,实例项目搭建 FineUI初学手册-部分JS整理 部分JS整理 ASP.NET-FineUI开发实践-1 实际开发环境是 ...

  3. FineUI开发实践

    ASP.NET-FineUI开发实践-7 摘要: 下拉显示grid列表.其实很简单,但是试了很多方法,水平有限,主要是都不好使,还是简单的好使了,分享下.先是看了看网上的,是直接写个了extjs控件类 ...

  4. ASP.NET-FineUI开发实践-9(四)

    现在是这么个问题,在开发中表格是动态出来的,就是标准板是全部字段列出,客户要根据情况列出自己想要的,在增加操作页面的同时要是能用前台自带的功能直接保存到后台就好了,现在的列显示和隐藏是不回发的. 1. ...

  5. ASP.NET MVC5 网站开发实践(二) Member区域–管理列表、回复及删除

    本来想接着上次把这篇写完的,没想到后来工作的一些事落下了,放假了赶紧补上. 目录: ASP.NET MVC5 网站开发实践 - 概述 ASP.NET MVC5 网站开发实践(一) - 项目框架 ASP ...

  6. ASP.NET MVC5 网站开发实践(二) Member区域–我的咨询列表及添加咨询

    上次把咨询的架构搭好了,现在分两次来完成咨询:1.用户部分,2管理部分.这次实现用户部分,包含两个功能,查看我的咨询和进行咨询. 目录: ASP.NET MVC5 网站开发实践 - 概述 ASP.NE ...

  7. ASP.NET MVC5 网站开发实践(二) Member区域 - 咨询管理的架构

    咨询.留言.投诉等功能是网站应具备的基本功能,可以加强管理员与用户的交流,在上次完成文章部分后,这次开始做Member区域的咨询功能(留言.投诉都是咨询).咨询跟文章非常相似,而且内容更少.更简单. ...

  8. ASP.NET MVC5 网站开发实践(二) Member区域 - 修改及删除文章

    上次做了显示文章列表,再实现修改和删除文章这部分内容就结束了,这次内容比较简单,由于做过了添加文章,修改文章非常类似,就是多了一个TryUpdateModel部分更新模型数据.   目录: ASP.N ...

  9. ASP.NET MVC5 网站开发实践(二) Member区域 - 全部文章列表

    显示文章列表分两块,管理员可以显示全部文章列表,一般用户只显示自己的文章列表.文章列表的显示采用easyui-datagrid.后台需要与之对应的action返回json类型数据   目录 ASP.N ...

  10. ASP.NET MVC5 网站开发实践(二) Member区域 - 添加文章

    上次把架构做好了,这次做添加文章.添加文章涉及附件的上传管理及富文本编辑器的使用,早添加文章时一并实现. 要点: 富文本编辑器采用KindEditor.功能很强大,国人开发,LGPL开源,自己人的好东 ...

随机推荐

  1. jvectormap 中国地图 (包括香港、台湾、澳门)

    一个完整的中国地图(各个省,市.还有国两制),谢谢大家. 忘了网上哪位的范例,我加了些修改. <html xmlns="http://www.w3.org/1999/xhtml&quo ...

  2. 配置was7、并部署发布项目!

    1:进入服务器,选择WebSphere Application Server,进入server1,右侧进入服务器基础结构,进入java和进程管理,进入进程定义 2:在页面左边菜单中选择java虚拟机, ...

  3. jquery实现页面置顶功能代码

    <html> <head> <title></title><script type='text/javascript> //回到顶部功能 f ...

  4. canvas 渐变

    那么第一种渐变方式就是LinearGradient,具体实施就是以下代码: var colorStyle=context.createLinearGradient(0,0,0,HEIGHT); col ...

  5. 表单数据校检方法 onsubmit()的使用?

    在项目中为一个表单(from)编写onsubmit()脚本的时候,经常需要验证表单中数据的合法性 所以常会写道:<form action="/admin/addUser.do" ...

  6. jquery 选项卡实现

    HTML文件 $(function(){ var $div_li =$("div.tab_menu ul li"); $div_li.click(function(){ $(thi ...

  7. Python新手学习基础之数据结构-列表2 添加

    insert 除了使用索引,我们还可以用列表的insert方法,在列表的指定位置添加新的值. insert的用法: list.insert(index, item) 例如: like_animals ...

  8. 成都Python工程师招聘

    最近公司开放python岗位,机会非常不错. 数据相关的岗位,可以接触很多好玩技术.成都是新建研发中心,整体技术气氛很不错. 坐标:成都 行业/部门:金融,数据部门 基本要求: python精通,学习 ...

  9. Memcached源码分析——slab的初始化

    以下内容仅为本人的笔记. /** * Determines the chunk sizes and initializes the slab class descriptors * according ...

  10. jdbc(1)(一)

    1.连接数据库,准备mysql连接jar包导入项目: Class.forName("com.mysql.jdbc.Driver"); //建立连接是比较耗时,耗资源的,实际开发中多 ...