Windows Phone 7中用好Silverlig“.NET研究”ht开发利器
除了Windows Phone 7的UI可以用Silverlight框架來設(shè)計,還可以用Silverlight創(chuàng)建Windows Phone 7的應(yīng)用程序。本文為一個國外.NET平臺開發(fā)者為Windows Phone 7創(chuàng)建的Silverlight應(yīng)用程序。
以下為譯文:
序言
Windows Phone 7 現(xiàn)在已經(jīng)開始銷售了,一些激進的開發(fā)者已經(jīng)在使用一些開發(fā)者工具創(chuàng)建新一代的Angry Birds或 Netflix 應(yīng)用程序了。就像我們在過去的文章中提到的那樣,為了方便開發(fā)者創(chuàng)建 Windows Phone 應(yīng)用程序,微軟提供了一套免費的開發(fā)者工具。Windows Phone的架構(gòu)可以讓開發(fā)者選擇兩種不同的框架來創(chuàng)建 Windows Phone 應(yīng)用程序/游戲的時候。在這篇文章中,我們主要關(guān)注使用 Silverlight 框架來創(chuàng)建 Windows Phone 應(yīng)用程序。
為什么要使用Silverlight?
我們不禁要問:為什么要使用Silverlight框架來創(chuàng)建 Windows Phone 應(yīng)用程序呢?
Silverlight(大家通常認為Silverlight是Flash的直接競爭對手)可以讓W(xué)eb開發(fā)者們創(chuàng)建富互聯(lián)網(wǎng)應(yīng)用程序。對于那些需要良好的應(yīng)用程序邏輯或?qū)嵱眯缘某绦騺碚f,你肯定更喜歡使用Silverlight。
Microsoft Visual Studio中的Silverlight項目入門
在你安裝了 Windows Phone 開發(fā)者工具以后,你可以直接運行Visual Studio Express for Windows Phone。或者,如果你已經(jīng)安裝了 Visual Studio 2010 Pro SKUs,你可以運行 Visual Studio 2010 Pro SKUs,然后選擇 File -> New -> Project,然后再從模板類型中選擇 Silverlight for Windows Phone 7。
圖1 選擇Silverlight for Windows Phone 7
這是一些你需要了解的模板。根據(jù)具體的應(yīng)用程序類型,你可以選擇最合適的模板。
對于我們的Demo來說,我們會選擇基礎(chǔ)的Windows Phone Application模板。把我們的項目命名成WindowsPhoneApplicationDemo,然后按Enter鍵來創(chuàng)建這個項目。
如果我們按了Enter鍵,IDE(Integrated development environment)會進行一系列操作,并且創(chuàng)建一大推文件Appl.xaml, MainPage.xaml 和其他圖像文件 ApplicationIcon.png, Background.png 和 SplashScreenImage.jpg 。
讓我們看看這些文件都是什么:
為了看到設(shè)計器視圖,可以在 MainPage.xaml 上右擊,然后點擊View Designer(如果設(shè)計器還不可用的話)。這是設(shè)計器的外觀,以及后臺代碼:
圖2 設(shè)計器視圖
對于我們的應(yīng)用程序來說,我們打算創(chuàng)建一個簡單的計算器,它可以讓用戶在攝氏溫度和華氏溫度之間進行轉(zhuǎn)換。要開始這個工作,可以按Ctrl + Alt + X,彈出ControlBox,然后把兩個TextBlock控件,兩個TextBox控件,和一個Button控件拖放到設(shè)計器上,如下圖所示:
圖3 彈出的相應(yīng)控件
現(xiàn)在,讓我們開始定制我們的應(yīng)用程序。
在 MainPage.xaml.cs 中找到下面這個代碼段,然后把ApplicationTitle的Text屬性改成My cool convertor,把PageTitle的Text屬性改成Let's rock WP7。
1. <!--TitlePanel contains the name of the application and page title-->2. <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
3. <TextBlock x:Name="ApplicationTitle" Text="MY APPLICATION" Style="{StaticResource PhoneTextNormalStyle}"/>
4. <TextBlock x:Name="PageTitle" Text="page name" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
5. </StackPanel>
6.
7. Also change the following snippet in MainPage.xaml.cs as highlighted.
8. <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
9. <TextBlock Height="30上海閔行企業(yè)網(wǎng)站設(shè)計與制作" HorizontalAli上海網(wǎng)站建設(shè)gnment="Left" Margin="29,71,0,0" Name=上海閔行企業(yè)網(wǎng)站制作 style="color: #000000;">"textBlock1" Text="Degrees" VerticalAlignment="Top" />
10. <TextBox Height="72" HorizontalAlignment="Left" Margin="162,54,0,0" Name="textBox1" Text="0" VerticalAlignment="Top" Width="245"></TextBox>
11. <TextBlock Height="30" HorizontalAlignment="Left" Margin="29,177,0,0" Name="textBlock2" Text="Fahrenheit" VerticalAlignment="Top" />
12. <TextBox Height="72" HorizontalAlignment="Left" Margin="162,162,0,0" Name="textBox2" Text="0" VerticalAlignment="Top" Width="245" />
13. <Button Content="Clear" Height="72" HorizontalAlignment="Left" Margin="139,320,0,0" Name="button1" VerticalAlignment="Top" Width="160" />
14. </Grid>
點擊DegreesTextBlock旁邊的那個 TextBox,然后點擊Properties,在TextChanged事件上雙擊,自動創(chuàng)建一個新的事件:textBox1_TextChanged。為了把當(dāng)前輸入的值轉(zhuǎn)換成FahrenheitTextBlock旁邊的那個 TextBox 中的華氏溫度,這是應(yīng)該添加的代碼:
1. private void textBox1_TextChanged(object sender, TextChangedEventArgs e)2. {
3. if (int.TryParse(textBox1.Text, out degrees))
4. {
5. fahrenheit = 9 / 5.0 * degrees + 32;
6. textBox2.Text = fahrenheit.ToString();
7. }
8. else
9. textBox1.Text 上海企業(yè)網(wǎng)站制作= "0";
10.
11. }
可以通過點擊Build菜單,然后選擇Build Solution來編譯這個應(yīng)用程序。修復(fù)你遇到的所有語法錯誤。按F5開始調(diào)試。這里有一件事情需要注意:你第一次啟動調(diào)試會話的時候,會比較慢。這是因為 Windows Phone 模擬器正在載入。我們的建議是,當(dāng)你調(diào)試完畢以后,不要關(guān)閉那個模擬器。而不是當(dāng)你完成調(diào)試會話的時候,點擊 Debug->Stop Debugging。這可以確保你以后載入調(diào)試會話的時候會更快一些。當(dāng)你啟動調(diào)試器的時候,你會發(fā)現(xiàn)你的應(yīng)用程序已經(jīng)顯示在模擬器上了。
要開始輸入攝氏溫度,可以點擊Degrees旁邊的那個 TextBox。
當(dāng)你開始輸入的時候,你會發(fā)現(xiàn)FahrenheitTextBlock旁邊的那個 TextBox會自動地更新,這很像Google的自動提示功能。
點擊Clear可以把攝氏溫度變成0,把華氏溫度變成32(等于攝氏0度)。如果你創(chuàng)建項目遇到了什么麻煩,可以使用本文中的樣例項目。
總結(jié)
在這篇文章中,我們可以看到,為 Windows Phone 創(chuàng)建一個簡單的 Silverlight應(yīng)用程序是多么的簡單。在以后的文章中,我會討論如何為 Windows Phone 7 創(chuàng)建一個基于XNA的應(yīng)用程序。
總結(jié)
以上是生活随笔為你收集整理的Windows Phone 7中用好Silverlig“.NET研究”ht开发利器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转] 微软轻量级 Web 开发平台 W
- 下一篇: java信息管理系统总结_java实现科