天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

將SL4 程序移植到WP7(附Teched2010真機圖)

  前不久WP7 已經在國外上市,這意味著相應的WP7 應用程序和游戲將會蜂擁而至,由于之前研究過一陣SL,看到WP7 到來手便開始發癢。本篇將原來一個SL 模擬Nano5 的程序移植到WP7,為大家簡單演示一下移植過程。SL 程序請參考《Silverlight 模擬Nano5 界面效果》。

  素材移植

  注意,您的計算機上需要安裝Windows Phone Developer Tools。首先我們來新建一個WP7 應用程序。

New

  由于SL 程序比較簡單只包含一些圖片,所以將所有素材資源復制到WP7 項目。如下圖SL4 與WP7 項目列表對比。

SL4

WP7

  程序移植

  接下來先對XAML 程序進行移植,原來SL4 程序里XAML 只有一個<Canvas>。

<Canvas x:Name="LayoutRoot" MouseLeftButtonDown="LayoutRoot_MouseLeftButtonDown" />

  在WP7 中需要將<Canvas> 放入ContentPanel <Grid>。

<!--ContentPanel - place additional content here-->
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"
ManipulationDelta="ContentPanel_ManipulationDelta">
<
Canvas x:Name="imageList" Background="Transparent"/>
</
Grid>

  下面移植C# 程序,可以將SL4 的C# 程序全部復制到WP7 中再逐一對錯誤提示進行修改和調整。

  MainPage() 方法

  SL4:

public MainPage()
{
InitializeComponent();
addImages();
HtmlPage.Window.AttachEvent("DOMMouseScroll", LayoutRoot_MouseWheel);
HtmlPage.Window.AttachEvent("onmousewheel", LayoutRoot_MouseWheel);
HtmlPage.Document.AttachEvent("onmousewheel", LayoutRoot_MouseWheel);
startShow();
}

  WP7:不再需要支持不同瀏覽器的鼠標滾輪事件。

public MainPage()
{
InitializeComponent();
addImages();
startShow();
}

  事件觸發

  SL4:通過MouseWheel 鼠標滾輪事件來切換專輯封面。

private void LayoutRoot_MouseWheel(object sender, HtmlEventArgs args)
{

double mouseDelta = 0;
ScriptObject e = args.EventObject;
// Mozilla and Safari
if (e.GetProperty("detail") != null)
{
mouseDelta = ((double)e.GetProperty("detail"));
}

// IE and Opera
else if (e.GetProperty("wheelDelta") != null)
mouseDelta = ((double)e.GetProperty("wheelDelta"));

mouseDelta = Math.Sign(mouseDelta);

moveIndex((mouseDelta > 0) ? 1 : -1);
}

  WP7:通過ManipulationDelta 觸屏事件來完成。

private void ContentPanel_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
{
if (e.DeltaManipulation.Translation.X > 0)
{
moveIndex(1);
}
else
{
moveIndex(-1);
}
}

  測試運行

  打開WP7 模擬器后,原來的SL4 程序仍然可以在WP7 中正常運行,唯一區別就是原來的鼠標操作變為了觸屏操作。

Test

  總結

     當然本篇的SL4 程序相對來說比較簡單,沒有復雜的動態效果或類庫調用。在本次Teched2010 大會也和泳濤兄(WP7 MVP)交流了一下。其實SL 程序移植到WP7 也并非易事。首先,要將原來SL 項目里所有使用的資源全部復制到WP7 項目。除圖、音、影以外,更重要的是項目中引用的類庫,有些類庫可能在WP7 中并不支持。其次,要將SL 的XAML 代碼移植到WP7,所謂WP7 中的SL 開發平臺只是SL 的一部分,也就是說有些SL 的控件、屬性在WP7 不能使用,所以要做進一步的調整。最后,要把C# 程序移植到WP7,這也是很復雜的過程,其中涉及的因素很多,可借助VS 強大的調試功能進行修改。后續我還會對一些稍微復雜些的程序進行移植,也希望大家分享自己的開發經驗。

  源代碼:WP7Nano5.zip

  Teched2010

  最后上幾張Teched2010 中用于Demo 演示和展示的WP7 真機。機型:三星

  可以按自己的喜好設置主題顏色:

IMAG0037

IMAG0039

  手機游戲:刺客信條、極品飛車,都是大作啊!玩了一下極品飛車,運行很流暢,通過重力感應控制賽車轉向。

IMAG0038

  美中不足的是當前WP7 本身還不支持中文輸入,也沒有手寫輸入。要是用WP7 發短信可麻煩了,但似乎有第三方開發的軟件可以支持。期待WP7 早日登陸國內市場。

it知識庫將SL4 程序移植到WP7(附Teched2010真機圖),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 羞羞影院午夜男女爽爽免费 | 中文字幕久久久 | 美国大臿蕉香蕉大视频 | 男男肉肉互插腐文 | 最近中文字幕在线中文视频 | 丁香美女社区 | WWW亚洲精品久久久乳 | 男人天堂999 | 老师那里好大又粗h男男 | 精品一成人岛国片在线观看 | 欧美成人3d动漫专区 | 国产h视频在线观看网站免费 | 一个人在线观看视频免费 | 麻豆第一区MV免费观看网站 | 久久er国产免费精品 | 91精品国产色综合久久 | 天天躁日日躁狠狠躁中文字幕老牛 | 成人国产亚洲欧美成人综合网 | 精品国产品国语在线不卡丶 | 云南14学生真实初次破初视频 | 国产专区亚洲欧美另类在线 | 好男人午夜www视频在线观看 | 亚洲黄色免费在线观看 | 日本精品久久久久中文字幕 1 | 中国老太太xxx | 亚洲AV无码乱码国产麻豆穿越 | AV精品爆乳纯肉H漫网站 | 国产精品久久久久久精品... | 亚洲色图影院 | 日产2021免费一二三四区在线 | 两个吃奶一个添下面视频 | 欧美一级成人影院免费的 | 99er4久久视频精品首页 | 熟女人妻AV五十路六十路 | 色琪琪久久热在线 | 久久国产高清字幕中文 | 欧美精品高潮呻吟AV久久 | 欧洲最大无人区免费高清完整版 | 韩剧19禁啪啪无遮挡大尺度 | 菠萝菠萝蜜免费播放高清 | 精品国产人妻国语 |