FineUI作為一款開(kāi)源控件庫(kù),一直堅(jiān)持“Release Early, Release Often”的版本發(fā)布策略,F(xiàn)ineUI v4.0是自開(kāi)源以來(lái)最大的一次升級(jí),因?yàn)檫@次將 extjs 庫(kù)從 v3.4 升級(jí)為 v4.2,大家都知道 extjs 的這兩個(gè)版本不兼容,有很多很多需要修改的地方,F(xiàn)ineUI的代碼更新也在 50% 以上。
FineUI v3.2.6 主要增加了 “表格內(nèi)編輯” 功能,不過(guò)此功能尚不完善,希望大家能夠多測(cè)測(cè),下個(gè)版本主要會(huì)增強(qiáng)表格內(nèi)編輯功能。
FineUI是基于 ExtJS 的專(zhuān)業(yè) ASP.NET 2.0 控件庫(kù)。
FineUI的使命
創(chuàng)建 No JavaScript,No CSS,No UpdatePanel,No ViewState,No WebServices 的網(wǎng)站應(yīng)用程序。
發(fā)布?xì)v史
ASP.NET UI控件(FineUI) V4.2.2官方中文版
-官網(wǎng)示例總數(shù)突破300個(gè)!
-更新示例,如果PageManager定義了AutoSizePanelID屬性,則去除頁(yè)面的CSS定義:body.f-body。
-修正自定義提示對(duì)話(huà)框圖標(biāo)無(wú)效的問(wèn)題(莮亾-7615)。
-Alert、Confirm增加CssClass屬性。更新示例:雜項(xiàng)->消息框->自定義對(duì)話(huà)框圖標(biāo)。
+表格增強(qiáng)。
-單元格編輯表格重新綁定數(shù)據(jù)時(shí),先取消當(dāng)前活動(dòng)的編輯器(andyxjy2-7559)。
-單元格編輯表格底層傳輸數(shù)據(jù)優(yōu)化(不兼容提醒。,將修改和刪除數(shù)據(jù)合并,由原來(lái)的:[[1,0,{"AtSchool":false}]]
改為:[{"index":1,"originalIndex":0,"id":"record-3","values":{"AtSchool":false},"status":"modified"}]。
-為FieldType增加枚舉類(lèi)型Double(精度為15~16),F(xiàn)loat的精度為6~7。
+一個(gè)函數(shù)獲取單元格編輯的全部?jī)?nèi)容(GetMergedData),包含新增、刪除、修改的數(shù)據(jù)。
-新增示例:?jiǎn)卧窬庉?>新增刪除->新增行與刪除行(GetMergedData)。
-表格增加DataIDField屬性,GridRow增加RowID屬性。
-表格服務(wù)器事件參數(shù)增強(qiáng),主要是增加RowID屬性,并和之前兼容。
-將GetDeleteSelectedReference標(biāo)識(shí)為已過(guò)時(shí),請(qǐng)使用GetDeleteSelectedRowsReference。
+為GetAddNewRecordReference增加重載函數(shù),可以指定增加行后進(jìn)入編輯狀態(tài)的列。
-增加示例:?jiǎn)卧窬庉?>新增刪除->新增行(定位到某一列)。
-增加示例:?jiǎn)卧窬庉?>結(jié)束編輯->結(jié)束編輯(姓名不能為空);結(jié)束編輯(高亮單元格);結(jié)束編輯(更新單元格的值);
結(jié)束編輯(更新非可編輯單元格的值)。
+SelectedCell的數(shù)據(jù)類(lèi)型由int[]改為string[](不兼容提醒。。
-更新示例:?jiǎn)卧窬庉?>新增刪除行->服務(wù)器端刪除行。
-增加示例:?jiǎn)卧窬庉?>結(jié)束編輯->結(jié)束編輯(綁定數(shù)據(jù)后選中單元格)。
-增加屬性SelectedRowIDArray、SelectedRowID。
-增加屬性EnableRowDeselectEvent,更新示例:事件->行選中事件(取消選中事件)。
-表格列增加MinWidth,增加示例:列寬度->自適應(yīng)列(多列);各列寬度自適應(yīng)(最小列寬度)。
-表格增加EnableColumnResize屬性,增加示例:標(biāo)題欄菜單->隱藏標(biāo)題欄;禁用表頭菜單。
+優(yōu)化導(dǎo)出文件的腳本。
-__doPostBack第一個(gè)參數(shù)指定是否AJAX請(qǐng)求,例如:__doPostBack(false, '', 'Confirm_OK')。
-JS變量F.control_enable_ajax更名為F.controlEnableAjax(不兼容提醒。。
-GetCustomEventReference第一個(gè)參數(shù)指定是否AJAX請(qǐng)求,例如:GetCustomEventReference(false, "Confirm_OK")。
-更新示例:雜項(xiàng)->消息框->響應(yīng)確定按鈕(點(diǎn)擊確定按鈕后,下載文件);響應(yīng)確定按鈕(點(diǎn)擊確定按鈕后,先隱藏窗體再下載文件);
響應(yīng)確定按鈕(點(diǎn)擊確定按鈕后,先隱藏IFrame窗體再下載文件)。
-增加示例:表格控件->導(dǎo)出與下載->導(dǎo)出文件(雙擊下載);雜項(xiàng)->消息框->自定義對(duì)話(huà)框按鈕文本。
+表單增強(qiáng)。
-增加配置項(xiàng):FormRowItemsSpace(表單行子項(xiàng)之間的間距,默認(rèn)為8px,對(duì)應(yīng)于Form的FormRowItemsSpace屬性)。
-Form控件重構(gòu),F(xiàn)ormRow作為面板渲染到客戶(hù)端,可以顯示隱藏。
-Form中的表單元素響應(yīng)Tab鍵時(shí)橫向跳轉(zhuǎn),更加符合用戶(hù)習(xí)慣(之前是縱向跳轉(zhuǎn))。
-更新示例:表單控件->雜項(xiàng)->隱藏表單字段;禁用與只讀。
-增加示例:表單布局->標(biāo)簽文本水平居中;表單中的多行按鈕;
-增加示例:雜項(xiàng)->自定義標(biāo)簽寬度和位置;標(biāo)簽換行;ColumnWidths混合使用百分比和固定寬度。
V4.1.6
-增加示例:表格控件->導(dǎo)出與下載->導(dǎo)出文件(FindControl,查找模板列中控件)。
-增加示例:表格控件->導(dǎo)出與下載->導(dǎo)出文件(多表頭)。
-修正下拉列表數(shù)據(jù)綁定后在第一個(gè)位置插入項(xiàng),而最終選中的非第一項(xiàng)的問(wèn)題。
-修正下拉列表在沒(méi)有數(shù)據(jù)項(xiàng)時(shí),可能會(huì)觸發(fā)SelectedIndexChanged事件的問(wèn)題。
-BoxLayoutAlign的默認(rèn)值由Start改為Stretch。
-增加示例:其他控件->選項(xiàng)卡控件->選項(xiàng)卡的位置。
-更新示例:表單控件->雜項(xiàng)->禁用與只讀。
-修正AutoSizePanelID的面板中Submit按鈕回車(chē)無(wú)效的問(wèn)題(Ward_Lee)。
+支持一個(gè)面板擁有多個(gè)工具欄。
-增加示例:其他控件->工具欄與菜單->多行工具欄。
-增加示例:表格控件->分頁(yè)與排序->數(shù)據(jù)庫(kù)分頁(yè)(底部工具欄)。
+重構(gòu)表單改變確認(rèn)對(duì)話(huà)框(不兼容提醒。。
-刪除Window控件的EnableConfirmOnClose屬性,以及GetConfirmHideReference類(lèi)似的5個(gè)方法。
-刪除ActiveWindow中GetConfirmHideReference類(lèi)似的5個(gè)方法。
-增加配置項(xiàng)EnableFormChangeConfirm,啟用表單改變確認(rèn)對(duì)話(huà)框(默認(rèn)為false)。
-為面板控件增加GetClearDirtyReference方法,用來(lái)清空面板內(nèi)表單字段的改變狀態(tài)。
-更新示例:內(nèi)聯(lián)框架->窗體關(guān)閉前的確認(rèn)對(duì)話(huà)框;保存按鈕放在窗體工具欄中。
主要改動(dòng)點(diǎn)
DropDownList默認(rèn)可以為空
最大好處是方便使用Required屬性做客戶(hù)端驗(yàn)證,見(jiàn)下圖:
FineUI v4 對(duì)必填項(xiàng) - 審批人 - 的處理更加合理,實(shí)際效果更加好。
表格的 EnableRowNumber 屬性變成了一個(gè)真正的列