`
king_tt
  • 浏览: 2083404 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

【6年开源路】海王星给你好看!FineUI v4.0正式版暨《FineUI3to4一键升级工具》发布!

 
阅读更多

去年10-28号,我发布了一篇文章《海王星给你好看!FineUI v4.0公测版发布暨《你找BUG我送书》活动开始》,标志着FineUI开始向4.0版本迈进。经过4个月3个公测版的锤炼,今天我高兴的宣布FineUI v4.0正式版发布了!

关于FineUI
基于 ExtJS 的开源 ASP.NET 控件库。

FineUI的使命
创建 No JavaScript,No CSS,No UpdatePanel,No ViewState,No WebServices 的网站应用程序。

支持的浏览器
IE 8.0+、Chrome、Firefox、Opera、Safari

授权协议
Apache License v2.0
注:ExtJS 库在 GPL v3 协议下发布(http://www.sencha.com/license)。

相关链接
首页:http://fineui.com/
论坛:http://fineui.com/bbs/
示例:http://fineui.com/demo/
下载:http://fineui.codeplex.com/

查看版本更新日志:http://fineui.com/version/

主要改动点

DropDownList默认可以为空

最大好处是方便使用Required属性做客户端验证,见下图:

FineUI v4 对必填项 - 审批人 - 的处理更加合理,实际效果更加好。

表格的EnableRowNumber 属性变成了一个真正的列

在FineUI v3 中,页面代码如下:

<x:Grid ID="Grid1" Title="表格" Width="800px" PageSize="10" ShowBorder="true" ShowHeader="true"
	AutoHeight="true" AllowPaging="true" runat="server" EnableCheckBoxSelect="True"
	DataKeyNames="Id" IsDatabasePaging="true" OnPageIndexChange="Grid1_PageIndexChange"
	EnableRowNumber="True" EnableRowNumberPaging="true" RowNumberWidth="24px">
	<Columns>
		<x:BoundField Width="150px" DataField="Id" HeaderText="ID" />
		<x:BoundField ExpandUnusedSpace="true" DataField="EntranceTime" HeaderText="时间" />
	</Columns>
</x:Grid>

在FineUI v4 中,我们需要指定第一列为 RowNumberField,同时可以通过Width来指定列的宽度:

<x:Grid ID="Grid1" Title="表格" EnableFrame="true" EnableCollapse="true" Width="800px" 
	PageSize="10" ShowBorder="true" ShowHeader="true"
	AllowPaging="true" runat="server" EnableCheckBoxSelect="True"
	DataKeyNames="Id" IsDatabasePaging="true" OnPageIndexChange="Grid1_PageIndexChange">
	<Columns>
		<x:RowNumberField EnablePagingNumber="true" Width="30px" />
		<x:BoundField Width="150px" DataField="Id" HeaderText="ID" />
		<x:BoundField ExpandUnusedSpace="true" DataField="EntranceTime" HeaderText="时间" />
	</Columns>
</x:Grid>

分组表头标签重定义  

FineUI v3 中的分组表头有一些限制,比如大家最常问到的如何实现分组表头的合并。在FineUI v4中可以轻松实现:

表格的 SortColumnIndex 属性被 SortField 属性替代

表格的 SortField 和 列的 SortField 相对应,在 ASPX 页面需要把 SortColumnIndex 去掉。

同时还要注意后台排序事件同样使用表格的 SortField 属性:

复制代码
protected void Grid1_Sort(object sender, FineUI.GridSortEventArgs e)
        {
            Grid1.SortDirection = e.SortDirection;
            Grid1.SortField = e.SortField;

            BindGrid();
        }
复制代码

删除树节点的 SingleClickExpand 属性

由于extjs v4.2不再支持此属性,我们通过变通的方法,为树控件增加 EnableSingleClickExpand 属性,来达到类似的效果。

客户端脚本的改变

函数onReady更改为F.ready(fn)
函数onAjaxReady更改为F.ajaxReady(fn)
函数X.util.beforeAjaxPostBackScript更改为F.beforeAjax(fn)

这样做的好处是可以多次注册事件,而多次注册的事件会按照顺序执行。这是FineUI v3.0所不支持的。

表格合计行的支持

表格合计行在 FineUI v4.0中默认支持,可以通过 SummaryPosition 属性来控制合计行的显示问题。而在 FineUI v3.0中则要写自定义JS来完成。

后台设置合计行数据也很简单,只需要设置 SummaryData 属性即可:

复制代码
private void OutputSummaryData()
{
    DataTable source = GetDataTable2();

    float donateTotal = 0.0f;
    float feeTotal = 0.0f;
    foreach (DataRow row in source.Rows)
    {
        donateTotal += Convert.ToInt32(row["Donate"]);
        feeTotal += Convert.ToInt32(row["Fee"]);
    }

    
    JObject summary = new JObject();
    summary.Add("major", "全部合计");
    summary.Add("fee", feeTotal.ToString("F2"));
    summary.Add("donate", donateTotal.ToString("F2"));


    Grid1.SummaryData = summary;

}
复制代码

通过简单的JS添加工具图标和菜单

这个效果虽然没有默认的控件支持,但只需一段JavaScript代码即可搞定:

复制代码
// 添加工具图标,并在点击时显示上下文菜单
leftRegion.addTool({
    type: 'gear',
    tooltip: '系统设置',
    regionTool: true,
    handler: function (event, toolEl, panelHeader) {
        menuSettings.showBy(this);
    }
});
复制代码

表格右键菜单

通过组合 Menu 服务器控件和一段简单的JavaScript代码,即可实现上述效果:

F(gridID).on('beforeitemcontextmenu', function (view, record, item, index, event) {
    F(menuID).showAt(event.getXY());
    event.stopEvent();
});
<f:Menu id="Menu1" runat="server">
    <f:MenuButton ID="btnSelectRows" EnablePostBack="false" runat="server" Text="全选行">
    </f:MenuButton>
    <f:MenuButton ID="btnUnselectRows" EnablePostBack="false" runat="server" Text="取消行">
    </f:MenuButton>
</f:Menu>

海王星主题

海王星主题是 FineUI v4.0 最大的改变,现在就到官方示例一探究竟:http://fineui.com/demo/

《FineUI3to4一键升级工具》

由于 FineUI v4 和 FineUI v3.x 差异很大,有很多不兼容的地方,因此我们提供了一键升级工具供大家使用。

《FineUI3to4一键升级工具》专供邮件订阅用户,如果您还未订阅FineUI 官方网站,请点击如下链接订阅

http://list.qq.com/cgi-bin/qf_invite?id=79abf8372c76e63b0d88931760427245dbfee6a461c0bb1a

使用《FineUI3to4一键升级工具》来升级官方示例,总共进行了 500 多次规则替换,从而大大减轻了手工升级的工作量,参看如下升级日志:

《FineUI3to4一键升级工具》 v1.0 by sanshi

Web.config
>>>[add] 修改节点的tagPrefix属性为f
>>>[add] 删除内置资源配置项res.axd
>>>[FineUI] 删除节点的属性EnableBigFont

.\default.aspx
>>>[Window(windowSourceCode)] 向节点添加属性Hidden,值为true
>>>[Window(windowSourceCode)] 删除节点的属性Popup
>>>[Region(Region2)] 删除节点的属性EnableLargeHeader
>>>[Region(Region2)] 删除节点的属性EnableSplitTip
>>>[Region(Region2)] 删除节点的属性CollapseMode

省略号。。。。。。。
省略号。。。。。。。
省略号。。。。。。。
省略号。。。。。。。
省略号。。。。。。。
省略号。。。。。。。

.\autocomplete\custom_display.aspx
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});
>>>[SimpleForm(SimpleForm1)] 删除节点的属性EnableBackgroundColor

.\autocomplete\email.aspx
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});
>>>[SimpleForm(SimpleForm1)] 删除节点的属性EnableBackgroundColor


.\autocomplete\inline.aspx
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});
>>>[SimpleForm(SimpleForm1)] 删除节点的属性EnableBackgroundColor


.\autocomplete\multi_values.aspx
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});
>>>[SimpleForm(SimpleForm1)] 删除节点的属性EnableBackgroundColor

.\autocomplete\multi_values_remote.aspx
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});
>>>[SimpleForm(SimpleForm1)] 删除节点的属性EnableBackgroundColor

.\autocomplete\multi_values_remote.aspx.cs

.\autocomplete\remote_with_cache.aspx
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});
>>>[SimpleForm(SimpleForm1)] 删除节点的属性EnableBackgroundColor

.\aspnet\aspnet.aspx
>>>[ContentPanel(ContentPanel1)] 删除节点的属性EnableBackgroundColor

.\aspnet\ckeditor.aspx
>>>[ContentPanel(ContentPanel1)] 删除节点的属性EnableBackgroundColor

.\aspnet\fckeditor.aspx
>>>[ContentPanel(ContentPanel1)] 删除节点的属性EnableBackgroundColor

.\aspnet\ueditor.aspx
>>>将脚本中字符串X.*.替换为F.*.
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});
>>>将脚本中字符串F.util.beforeAjaxPostBackScript = function () {};替换为F.beforeAjax(function() {});
>>>[ContentPanel(ContentPanel1)] 删除节点的属性EnableBackgroundColor

.\aspnet\ueditor_two.aspx
>>>将脚本中字符串X.*.替换为F.*.
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});
>>>将脚本中字符串F.util.beforeAjaxPostBackScript = function () {};替换为F.beforeAjax(function() {});
>>>[ContentPanel(ContentPanel1)] 删除节点的属性EnableBackgroundColor
>>>[ContentPanel(ContentPanel2)] 删除节点的属性EnableBackgroundColor
>>>[SimpleForm(SimpleForm1)] 删除节点的属性EnableBackgroundColor

.\accordion\accordion.aspx
>>>[Accordion(Accordion1)] 修改节点的ActiveIndex属性名称为ActivePaneIndex

.\accordion\accordion_links.aspx
>>>将脚本中字符串Ext.getCmp(替换为F(

.\js\default.js
>>>将脚本中字符串Ext.getCmp(替换为F(
>>>将脚本中字符串X.*.替换为F.*.
>>>将脚本中字符串.x_show(替换为.f_show(
>>>将脚本中字符串function onReady() {}替换为F.ready(function() {});


转换完成,共应用转换规则524次。


以下内容未能自动完成,请手工调整
========================================================

[.\other\formitemclass.aspx.cs]请手工删除FormItemClass相关代码
[.\layout\row.aspx][Panel(Panel2)]行布局已经删除,请考虑使用HBox或者VBox布局
[.\layout\row.aspx][Panel(Panel5)]行布局已经删除,请考虑使用HBox或者VBox布局
[.\grid\grid_groupheader_sort.aspx][Grid(Grid1)]表格的SortColumn属性已经不存在,请手工替换为SortField
[.\accordion\accordion.aspx.cs]你可能需要手工将ActiveIndex改为ActivePaneIndex

分享到:
评论

相关推荐

    FineUI_v3.2.0_source_all.zip_extjs 6_fineui_opera_web UI CSHARP

    FineUI - 基于 ExtJS 的专业 ASP.NET 2.0 控件库,拥有完善的 AJAX 支持和丰富的界面效果 FineUI 是一组基于 ExtJS 的专业 ASP.NET 2.0 控件库,拥有完善的 AJAX 支持和丰富的界面效果。 FineUI 是为了创建没有 ...

    360安全卫士V4.0新春正式版

    360安全卫士V4.0新春正式版只有4M左右,适合快速安装。(使用卡巴斯基杀毒功能时,需要手工下载卡巴斯基杀毒软件。) 360安全卫士是由奇虎公司推出的完全免费的安全类上网辅助工具软件,它拥有查杀流行木马、清理...

    易想商务网v4.0 sql 正式版商业版

    本人花钱买来的易想商务网v4.0 sql 正式版商业版(金色风格)。绝对完整商业版本! 官方出售价4680元。现在供奉给大家,喜欢的朋友就下吧。 演示地址:http://b2b.changehope.com/hope1/ 附件内提供易想商务网v4.0 ...

    KEPServerEx V4.0破解版及安装文档

    KEPServerEx V4.0破解版及安装文档. 本人自测可以使用,由于安装包较大,无法上传,自行下载安装包然后按照我的破解步骤即可破解,安装包很容易下载

    服务器安全狗v4.0正式版

    服务器安全狗 V4.0版更新内容: 1、防火墙全面改进,提升攻击防护效果(新增针对CC攻击防护功能) 2、新增IP超级黑名单功能 3、悬浮窗全面改进,用户可直接查看协议和拦截IP列表 4、修复极端情况下守护中心失效...

    DirectX修复工具(DirectX Repair)修复工具V4.0增强版

    从V4.0版起针对此问题进行了优化,只需点击“扩展”界面左上角的小锁图标切换为加密链接,即可避免大部分错误。 问题4:我在有的电脑上使用标准版或在线修复版修复DirectX后,程序弹出c++组件仍异常的提示,让我...

    Windows Search 4.0 正式版

    即 桌面搜索工具Windows Search 4.0的最终正式版,支持多种操作系统和包括简体中文在内的多国语言。值得一提的是,该软件以前被称为“Windows Desktop Search”,现在则去掉了其中的Desktop字样。Windows Search 4.0...

    最新版求职招聘小程序 V4.0.75全解密开源运营版小程序源码完整版

    6、企业登录(在手机端可操作企业信息编辑、发布职位、查收简历、通知面试) 7、企业VIP套餐购买功能(如月卡、季卡、年卡) 8、会员中心(在手机端 投送简历、收藏职位、填写简历、面试通知、刷新简历等功能) 9...

    小米6一键刷机工具recovery.rar

    小米6一键刷机工具recovery.rar

    oneui4.0 最新版模板资源含文档

    oneui4.0 最新版模板资源含文档 静态html资源模板,基于Bootstrap超级灵活的UI框架 ,使您能够快速构建你的后端和前端页面使用和强大的布局,这是为了尽可能节省你的时间,完全模块化和许多独特的特性,它将帮助您构建...

    完整版 ecshop4.0最新版本,官方最新版源码.rar

    ecshop4.0 2018年6月最新版本,ecshop4.0 2018年6月最新版本 亲测好用,挺不错的资源,大家快来下载吧!挺有用的!需要的话可以来下载哦! ECshop4.0官方最新版源码 多级返佣 升级多级返佣功能,支持二维码、海报...

    最新ChatGPT网站源码+支持GPT4.0+Prompt情景+ai绘画+GPT3.5 API绘画+语音识别输入!

    程序已支持ChatGPT4.0、Midjourney绘画、GPT3.5 绘画、语音识别输入、文章资讯发布功能、用户每日签到功能+一键更新版本。支持手机电脑不同布局页面自适应。 1、提问:程序已经支持GPT3.5、GPT4.0接口 2、支持三种Ai...

    最新ChatGPT网站源码运营版+支持ai绘画+GPT4.0+GPT3.5绘画+实时语音识别+后台一键版本更新!

    程序已支持ChatGPT4.0、Midjourney绘画、GPT3.5 API绘画 可同时、单独、开启或者关闭GPT3.5和GPT4.0两种ChatGPT提问模型,用户可切换,次数套餐也是分开的。支持手机电脑不同布局页面自适应。 程序完美运行无BUG,...

    斐讯k2一键telent工具,完美解决了

    斐讯k2一键开启telnet,实测完美。。可适用于本工具的产品及版本 K3C V32.1.22.113及之后推出的版本... 工具开发测试用的产品及成功的版本 K2P银A2 V22.6.7.58 测试通过 K3银A1 V21.5.37.246 测试通过 K2 A6 V22.6.503.3

    简易启动测试器 v4.0 Beta6

    简易启动测试器 v4.0 Beta6,可以测试U盘启动的工具

    CSA-云计算关键领域安全指南v4.0-2018.10-162页.pdf

    时隔6年,国际云安全联盟(CSA)将《云安全指南》在V3.01版本的基础上升级到V4.0版本。 《云安全指南4.0》相比2011年发布的《云安全指南》V3.01版本,虽然还是从架构、治理和运行三个方面14个领域对云计算安全进行指导...

    华三无线培训胶片v4.0.rar

    第6章H3C无线产品高级特性与配置V4.0.pptx 第7章无线网络勘测与设计操作指导V4.0.pptx 第8章室内外勘测设计原测V4.0.pp 第9章室内分布系统合路设计V4.0.ppt 第10章WAN产品工程安装指导V4.0.pptx 第11章WLAN产品工程...

    K3所有客户端无法登陆一键处理工具.rar

    1.进行网络测试,测试到服务器的网络连接是否正常 2.将客户端当前登录用户添加到服务器,并加入管理员组 ...4.启动客户端必要的服务 5.自动检测客户端是否有安装中间层,如有自动删除 6.将所有的vbr文件注册到服务器

    一键复制粘贴工具 v2.2 绿色免费版.rar

    一键复制粘贴工具,对于经常要对大量数据进行复制粘贴的朋友,虽然可以通过ctrl c、ctrl v来完成,但这样不仅繁琐、容易按错,长时间重复操作后还会感觉手指疲劳。基于以上原因编写了此程序,实现了一键复制粘贴的...

    chipgenius4.0官方最新版.rar

    不久新版就会出炉版本更新:V4.001、全面支持Win7、Win8、WinXP、Win2000系统(含32Bit/64Bit)2、全面支持USB3.0、USB2.0、USB1.1接口检测3、增加USB设备电流检测、设备版本号检测功能4、增加一键截图功能,...

Global site tag (gtag.js) - Google Analytics