ASP.NET-FineUI開發實踐-1


用.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得到了解放。直接上代碼

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

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頁面交互。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM