關於FineUI
基於 ExtJS 的專業 ASP.NET 控件庫。
FineUI的使命
創建 No JavaScript,No CSS,No UpdatePanel,No ViewState,No WebServices 的網站應用程序。
支持的瀏覽器
IE 7.0+、Firefox 3.6+、Chrome 3.0+、Opera 10.5+、Safari 3.0+
授權協議
Apache License v2.0
注:ExtJS 庫在 GPL v3 協議下發布(http://www.sencha.com/license)。
相關鏈接
論壇:http://fineui.com/bbs/
示例:http://fineui.com/demo/
文檔:http://fineui.com/doc/
下載:http://fineui.codeplex.com/
FineUI 嚴格遵守 ExtJS 對開源軟件的限制,不再內置 ExtJS 庫,請通過如下兩個途徑獲取ExtJS庫:
1. 獲取適用於 FineUI 的 ExtJS 庫:http://fineui.com/bbs/forum.php?mod=viewthread&tid=3218
2. 基於 FineUI 的空項目(Net2.0 和 Net4.0 兩個版本):http://fineui.com/bbs/forum.php?mod=viewthread&tid=2123
發布歷史
+2013-07-29 v3.3.1
-將工具YUICompressor替換為Microsoft Ajax Minifier(需要指定-evals:immediate)。
-完善FineUI的代碼注釋,創建FineUI參考手冊離線版。
-修正Window控件無法在外層頁面最大化的問題(小兵)。
-修正Window控件在Master-Content頁中無法觸發關閉事件的問題(小兵)。
-對X.util.initTreeTabStrip和X.util.addMainTab進行重構,可以指定切換/新增選項卡時是否刷新IFrame。
-更新other/addtab.aspx示例,在JavaScript中使用網站根路徑。
-增加示例other/confirm_cancel.aspx,點擊確認對話框的取消按鈕也能回發頁面(夏了,夏天)。
-修正AJAX異常時提示信息沒有消失的問題。
-優化AJAX超時提示對話框(請求超時,請刷新頁面並重試!)。
+性能優化。
-為官方示例增加壓縮ViewState的方法,在頁面基類PageBase中實現。
+為表格/樹/下拉列表/單選框復選框列表/表單字段控件啟用XState的Gzip壓縮,減少AJAX時POST的數據量。
-會稍微增加下載數據量,從整體上提升用戶體驗。
-可以通過設置控件、PageManager或者Web.config的EnableXStateCompress屬性來關閉XState壓縮(默認啟用)。
+表格性能優化
-優化CheckBoxField/HyperLinkField/LinkButtonField,減少生成的HTML代碼片段大小。
-優化模板列存在時POST數據大小,優化內存分頁時響應數據大小。
-優化CheckBoxField生產的CSS類名,將.box-grid-checkbox-unchecked-disabled更改為.unchecked.disabled。
-優化TextArea/HtmlEditor在頁面第一次加載和AJAX回發時產生的數據大小,防止生成重復數據。
-更新導出Excel的示例grid/grid_excel.aspx,特別注意如何處理模板列(為了優化性能,不能直接獲取模板列的內容了)。
+優化結果(A:grid/grid_rowcommand_paging.aspx,B:grid/grid_rowcommand_paging_database.aspx):
-版本-----A首次響應----A下一頁請求----A下一頁響應---B首次響應----B下一頁請求----B下一頁響應---
-v3.3.0---56.4K--------61.7K----------7.8K----------18.0K--------14.4K----------10.7K---------
-v3.3.1---43.7K---------7.0K----------0.2K----------16.4K---------3.5K-----------8.6K---------
+表格增強。
+修正模板列示例中注冊客戶端事件的錯誤,重新綁定數據后客戶端腳本失效。
-現在使用ExtJS的代理事件,只需要在頁面第一次加載時注冊事件即可。
-更新全部模板列示例grid\grid_edit.aspx、grid_edit_compare.aspx等,請仔細閱讀源代碼。
+修正SelectedRowIndexArray的一個BUG。
-在grid/grid_checkboxfield_rowcheckall.aspx中,點擊第一個復選框選中行,然后再次點擊第一個復選框不能取消行的選中狀態。
+模板列重構(內部實現)。
-模板列的ClientID由原來的Grid1_r1c5調整為Grid1_ctl09,現在ID由系統自動生成。
-GridRow不再繼承自WebControl,重新優化Grid內部的數據綁定邏輯(減少一個控件層次結構)。
-模板列控件GridRowControl實例直接添加到Grid.Controls中(之前添加為行控件的子控件)。
+可編輯單元格重構。
-更新所有示例,通過行索引找到行DataKeys,然后根據行關鍵字查找需要更新的數據。
-為表格增加DeleteSelected/GetDeleteSelectedReference方法,以便在客戶端刪除行。
-服務器端通過GetDeletedList方法獲取客戶端刪除的行在原始數據中的索引列表。
-重構GetModifiedData的實現[[rowIndex(int),originalRowIndex(int),modifiedFields(Dictionary)]]。
-增加示例grid/grid_editor_cell_new_delete.aspx。
-為表格增加EnableAfterEditEvent屬性和AfterEdit事件,用來處理單元格失去焦點事件。
-增加示例grid/grid_editor_cell_afteredit.aspx。