【黑暗信箱】TreeView Client-Side功能開發

網友Slash問:

最近加入了ASP.NET開發人員的行列(歡迎,歡迎,熱烈歡迎!),老板交付的第一個任務是將Javascript寫的檔案總管換成ASP.NET中的TreeView控制項,且需要右鍵選單、新增、刪除、更名、移動、複製資料夾,目錄要能新增無限多層... 初步構想是在各節點都觸發右鍵事件,一旦觸發就傳入給Javascript撰寫的右鍵選單類別三個參數,分別是位於哪一階層的參數、nodeID、rootID,讓各方法得知目錄所在位置,而被呼叫的方法就傳回Directory字串跟動態更新Sitemap的內容。

黑暗執行緒回答:

原則上這樣的構想是OK的,但實作細節就要考驗Javascript的功力了。

我一直很喜愛TreeView的表現方式,所以從ASP時代就用過Java Applet版本TreeView、ASP.NET 1.1時用IE WebControls版的TreeView,到ASP.NET 2.0 TreeView終於成為內建控件的一員。跟一些3rd Party廠商所提供的TreeView比起來,MS版的TreeView在Client-Side的動態支援上實在有些簡陋。例如: 用拖拉方式移動Node、動態載入ChildNodes、按右鍵彈出選單、整合AJAX... 等等,內建TreeView不是做不到,但往往缺少直接方便的API Method、有時甚至需要自己花很多精神從底層搞起,值不值得見仁見智。抱著練功的心態去看待這番整治工程的話還OK,但如果目標是要做得又快又精美,則不妨考量花點小錢省時間。(相信我,要做到這些3rd Party TreeView的華麗程度,Bug-Free,還要求可以跨IE、Firefox、Safari,開發工程絕對會讓你脫一層皮!)

介紹兩個我看過不錯的TreeView WebControl(都支援AJAX,文件、範例都很完整)

1. FlyTreeView For ASP.NET 2.0 
    Live Demo Price < USD 200

2.WebUI AJAX TreeView Control 
    模擬Vista檔案總管的Demo, 模仿Outlook 2007的Demo
    比FlyTreeView華麗多了,但較貴,約USD 1000

以上兩個控件,其介面的精美性,功能完整度,以開發類似UI所要花費的時間精力,相對於產品售價,我怎麼看都覺得是划算的投資。

不過,在某些情境下(例如要包含在大量銷售的自家產品中),即使微薄的成本也要斤斤計較,自行開發就變成不得不的選擇,但我建議還是可以參考學習這些優秀產品的架構與設計方式,反正JS的Source Code等同於半公開的,由其中了解實作各種操作的技巧(這是我很常用的學習方式),別一味盜用照抄就成了。

歡迎推文分享:
Published 14 June 2007 02:41 PM 由 Jeffrey
Filed under: , ,
Views: 17,110



意見

沒有意見

你的看法呢?

(必要的) 
(必要的) 
(選擇性的)
(必要的) 
(提醒: 因快取機制,您的留言幾分鐘後才會顯示在網站,請耐心稍候)

5 + 3 =

搜尋

Go

<June 2007>
SunMonTueWedThuFriSat
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567
 
RSS
創用 CC 授權條款
【廣告】
twMVC

Tags 分類檢視
關於作者

一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。

文章典藏
其他功能

這個部落格


Syndication