在開發Mobile Web Site之前,準備工作:
1. 確認IIS可以正常啟動。
2. VS2005能夠以HTTP方式正常建立Web Site。
3. 至少有1個模擬器,Pocket PC,Smartphone,Openwave。
建立1個空的網站,在網站中添加一個Mobile Web Form,命名為index.aspx。
將該頁面切換到Design模式,可以發現頁面上的Form的寬度非常小而且是固定的,這是因為該頁面與實際裝置上顯示的頁面會保持一致。
控制項的breakAfter屬性,true表示控制項render後會多添加一個分行符號。
Mobile Web Form與Web Form之間的區別:
1. 控制項Tag標籤:
Web Form:控制項標籤都以<asp:xxxx></asp>,atlas以前是以<atlas:xxxx></atlas>,現在也都統一成
<asp:xxxx></asp>形式了。
Mobile Web Form:控制項標籤以<mobile:xxxx></mobile>
2. Mobile Web Form中可以添加的控制項:(在Design中,Toolbox中)
Standard:只能用於WM操作。
Mobile Web Form:可以適用於任何行動裝置瀏覽器,可能顯示效果不一樣,特殊控制項需要根
據裝置進行效果調整。
3. Mobile Web Form上可以放置多個Form,而Web Form只能有1個Form。
4. Mobile Web Form不支援MasterPage,而Web Form支援。
一個網站中可以包含Web Form和Mobile Web Form,Mobile Web Form上的控制項推薦都採用Toolbox中Mobile Web Form面板內的控制項。針對不同平台的瀏覽器,定製一些適用於該平台的設定,Mobile Web Form中的所有Mobile控制項都支援定製。
控制項定製:
在控制項的Properties的Property Overrides,選擇Edit按鈕,在Applied Device Filters中選擇一個過濾器,選擇好後按Edit編輯參數,Compare用於根據什麼比較,Argument是該如果比較項等於該參數就滿足該過濾器的條件,就可以按照你自己定義的這個效果顯示。
Mobile Web Form的資料邦定控制項ObjectList Control
可以用DataSource指定資料來源,支援Template,共有3類Template。
1.Header and Footer Templates
2.Item Templates
3.Separator Template。
補充:一旦設定了某個Template,那預設的顯示就消失了。
我只設定了Header和Footer,並沒有設定Item,但是系統為認為Item也是設定的,只不過沒有內容而已。另外,只有為ObjectList Control控制項定製以後才能進行Template的編輯。
在Mobile Web Form上可以放置多個Form,Form的形式是以組件的形式載入的,當使用者對該Form所在的Web Form發出請求後,就會將該Web上的所有Form全部載入,以減少在切換Form時的時間。同一Web上的不同Form間切換隻傳遞的是一些資料,具體可以使用Openwave後看下請求和相應效果。
另外對於Openwave,由於在Openwave sdk 6.2.2中頁面的button會顯示出來,而不是當焦點移過去後,SoftKey左鍵會有button的顯示,較早版本的Openwave中會有該效果的。
參考文章:
Customizing ASP.NETMobile Web Controls for Specific Devices