已經用微軟的Ajax庫做了幾個比較成功的項目,在這過程中也發現了AJax庫的一些錯誤,今天把它們都一一列出來,給大家一個參考。在項目中使用到的主要是Xml-script的功能,這個功能在早期的Atlas中出現,在正式版中被剔除,但是在1月份的CTP版本中仍然被保留,而且這部分功能有可能會被加入到以後的正式版本中。如果你也恰好用到XML-script部分的話,或者對這部分感興趣,不妨過來看看,歡迎提出修改意見,目前我修正的錯誤列表如下:
修正Sys.Preview.Binding的一處錯誤,在出現動態綁定的情況下,Sys.PrevIEw.Binding不能正常工作;
修正Sys.Preview.UI.Data.ListView,使其能夠保持高亮當前選擇的行,原來的ListVIEw翻頁後不能保持高亮當前選擇行;
修正Sys.PrevIEw.BindingBase.Transformers.ToString的一處低級錯誤,{0}改為{0,微軟真的不應該出現這樣的錯誤,看來他們確實沒有好好的檢查代碼;
修改Sys.PrevIEw.UI.Template,使其能夠獲取layoutElement和scriptNode;
修正Sys.Application的一處錯誤,Sys.IDisposable的對象被Sys.Application管理,但是這個對象居然在死的時候沒有通知Sys.Application把自己刪除。
微軟提供的JavaScript源代碼中包含Sys.Preview.UI.AutoCompleteBehavior和Sys.Preview.UI.PopupBehavior,但是在Microsoft.Web.PrevIEw.dll的資源文件中的腳本卻沒有這兩個Behavior,做這個兩個Feature時感覺被微軟忽悠了一下,把這兩個Behavior添加進來。
我把這些修正和修改放到了一個獨立的腳本,在ScriptManager中添加引用就可以了,下載修改的代碼。
這些都是在項目中使用XML-script時出現的錯誤,或者說是需要這樣進行修改,也許我的理解是錯誤的,歡迎大家給出意見。