(1)處理字串
(2)使用 DateTime
(3)理解和建立類
這一節中主要講解如何建立一個類,如何執行個體化一個類,以及調用類的成員,這部分完全是C#中的內容。這部分內容對我來說已經比較悉了,所以沒什麼大的收穫。但我發現了一個快捷技術。這個被稱為code snippet plus auto implemented property技術,這樣可以很快捷的輸入代碼,大大提高了效率。
相關的內容可以參考這一篇博文:http://www.cnblogs.com/Xiaojiang/archive/2008/04/05/1138333.html 裡面詳細介紹了幾種快速鍵。
而這小節用到的就是prop這個來快速建立類的成員屬性,方法是:輸入prop,然後雙擊TAB鍵,就會出現:
在游標沒有移開的情況下,可以按TAB來切換int 和MyProperty這兩塊代碼,是用來給你輸入自己想要建立的變數類型和變數名,等改完後,再雙擊Enter就可以切換到下一行繼續輸入。
(4)使用 .NET Framework 類庫中的類
本節講的是如何使用.NET Framework 類庫中的類定義執行個體。個用執行個體不止是new一種,還有其它的方式,例如:IsolatedStorageSettings mySettings = IsolatedStorageSettings.ApplicationSettings;這是windows phone執行siliverlight應用程式時,CoreCLR建立IsolatedStorageSettings的一個執行個體,我們可以通過訪問其ApplicationSettings屬性,引用IsolatedStorageSettings對象。
對於如何區分和使用.NET Framework 類庫中的類,我們可以開啟msdn.micorsoft.com網站協助我們去解決問題。或者查網站,論壇,書籍和視頻。
事實證明,你編寫的代碼越多,就有越多的經驗可以借鑒。
事實上,我們拖一個控制項到設定介面上時,已經為這個控制項建立了一個執行個體。而在XAML上也同時建立了一個對應的代碼,就像XML或HTML。
我們建立一個按鈕時,可以用C#的new運算子,也可以在XAML代碼中建立。
(5)理解命名空間
本節中主要介紹了命名空間,namespace既“命名空間”,也稱“名稱空間” VS.NET中的各種語言使用的一種程式碼群組織的形式 通過名稱空間來分類,區別不同的代碼功能 同時也是VS.NET中所有類的完全名稱的一部分。 我們在引用類的時候,必須在頭部把類所在的命名空間using進來,而引用這個類名,可以把命名字間也一起寫進入,一般都不寫。如果在使用類的時候沒有把相應的命名空間引用進來的話,進行時候就會報錯。例如:
sqlconnection
如果開頭沒有using相應的命名空間的話,就會有錯誤提示:
紅色的波浪線表示VS不能識別這個類,藍色的表示可以在庫中找到包含這個類的命名空間。這時只要按住Ctrl+. 就會出現:
再按斷行符號,它就會自動幫你添加命名空間,就可以正常使用啦。
(6)使用集合
本節講述了如何建立對象的集合。
List<int> list = new List<int>();list.Add(2);list.Add(3);list.Add(7);foreach (int prime in list) // Loop through List with foreach{Console.WriteLine(prime);}for (int i = 0; i < list.Count; i++) // Loop through List with for{Console.WriteLine(list[i]);}
~~~ Output of the program ~~~
(Repeated twice)
2
3
7
相關用法,參考這篇博文:http://www.cnblogs.com/wangs/archive/2011/01/19/1939006.html
(7)對象和集合初始設定式
本節講述了兩種方式給對象進行初始化,一種是在建立執行個體的時候給它賦值,另一種是建立對象集合的同時,給對象賦值。
如:
Car car1 = new Car() { Make = "日本", Model = "本田" };
Car car2 = new Car() { Make = "德國", Model = "豐田" };
List<Car> CarList=new List<Car>(){
new Car(){Make="日本",Model="本田"},
new Car(){Make="德國",Model="豐田"}
};
foreach (Car myCar in CarList)
{
myTextBlock.Text += myCar.Make + ":" + myCar.Model + Environment.NewLine ;
}
確實這樣在集合中建立的時候同時賦值,可以簡化很多代碼,使用集合,大大方便了批量輸出。
(8)在 XAML 設計器和代碼視窗中工作
本節主要講解的是視窗中各個功能按鈕。然後講解如何在XAML視窗裡面用代碼來建立一個按鈕。也就是說,XAML跟可視化視窗的內容是同步的,在XAML裡面也可以通過寫代碼建立各種控制項,而且有時候寫代碼比拖控制項還要高效。
(9)理解 XAML 文法
本節開始講解XAML的文法。XAML實質上就是為了UI設計人員來設的程式設計語言,專註於silverlight的設計與布局,就像XML,HTML一樣,把邏輯設計與UI設計分離開來。大多數人選擇Expression Blend for Windows Phone 7 來開發,是因為其提供額外的工具各功能,可以更好的用於設定介面和增強戶體驗,而Visual Studio 2010 Express for Windows Phone 更多的是側重於編寫C#代碼。
<phone:PhoneApplicationPage x:Class="PhoneApp4.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone" xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768" FontFamily="{StaticResource PhoneFontFamilyNormal}" FontSize="{StaticResource PhoneFontSizeNormal}" Foreground="{StaticResource PhoneForegroundBrush}" SupportedOrientations="Portrait" Orientation="Portrait" shell:SystemTray.IsVisible="True"> <!--LayoutRoot 是放置所有頁面的根資料格--> <Grid x:Name="LayoutRoot" Background="Transparent"> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <!--TitlePanel 包含應用程式的名稱和頁面標題--> <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28"> <TextBlock x:Name="ApplicationTitle" Text="我的應用程式" Style="{StaticResource PhoneTextNormalStyle}"/> <TextBlock x:Name="PageTitle" Text="頁面名稱" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/> </StackPanel> <!--ContentPanel - 其他內容置於此--> <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> <Button Content="Button" Height="72" HorizontalAlignment="Left" Margin="134,48,0,0" Name="button1" VerticalAlignment="Top" Width="160" /> </Grid> </Grid> <!--顯示 ApplicationBar 使用方式的程式碼範例--> <!--<phone:PhoneApplicationPage.ApplicationBar> <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True"> <shell:ApplicationBarIconButton IconUri="/Images/appbar_button1.png" Text="按鈕 1"/> <shell:ApplicationBarIconButton IconUri="/Images/appbar_button2.png" Text="按鈕 2"/> <shell:ApplicationBar.MenuItems> <shell:ApplicationBarMenuItem Text="功能表項目 1"/> <shell:ApplicationBarMenuItem Text="功能表項目 2"/> </shell:ApplicationBar.MenuItems> </shell:ApplicationBar> </phone:PhoneApplicationPage.ApplicationBar>--></phone:PhoneApplicationPage>
<phone:PhoneApplicationPage
所有內容的開頭,且所有內容都包含在這裡面。PhoneApplicationPage屬於以phone為別名的命名空間
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
意思是:命名空間:phone是來自clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone的。所以上面所有帶有:的那些單詞實際上是在定義命名空間,就像C#中的Using一樣。
<!-- 代碼注釋 -->
這個是用來注釋的,像HTML一樣。
<!--LayoutRoot 是放置所有頁面的根資料格-->
<Grid x:Name="LayoutRoot" Background="Transparent">
這裡的Grid是用於布局的的網格。
<!--TitlePanel 包含應用程式的名稱和頁面標題-->
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
這個是對應於Grid第一行的Panel。就是容器
用Grid和panel是布局windows phone silverlight應用程式上的控制項和文本的主要技術
<!--TitlePanel 包含應用程式的名稱和頁面標題-->
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock x:Name="ApplicationTitle" Text="我的應用程式" Style="{StaticResource PhoneTextNormalStyle}"/>
<TextBlock x:Name="PageTitle" Text="頁面名稱" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
</StackPanel>
可以看到StackPanel裡麵包有兩個TextBlock控制項。這個StackPanel通常用於定義應用程式的主題。
<!--ContentPanel - 其他內容置於此-->
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<Button Content="Button" Height="72" HorizontalAlignment="Left" Margin="134,48,0,0" Name="button1" VerticalAlignment="Top" Width="160" />
</Grid>
這裡主要用於放置定義程式主要功能的控制項內容。
<!--顯示 ApplicationBar 使用方式的程式碼範例-->
<!--<phone:PhoneApplicationPage.ApplicationBar>
<shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">
<shell:ApplicationBarIconButton IconUri="/Images/appbar_button1.png" Text="按鈕 1"/>
<shell:ApplicationBarIconButton IconUri="/Images/appbar_button2.png" Text="按鈕 2"/>
<shell:ApplicationBar.MenuItems>
<shell:ApplicationBarMenuItem Text="功能表項目 1"/>
<shell:ApplicationBarMenuItem Text="功能表項目 2"/>
</shell:ApplicationBar.MenuItems>
</shell:ApplicationBar>
</phone:PhoneApplicationPage.ApplicationBar>-->
而這段注釋掉的內容是用於以後擴充用的,用於定義功能表列之類的功能。
(10)Silverlight 布局控制項
本節介紹三個用於布局的控制項:Grid(網格),Canvas(畫布),StackPanel。
(11)處理 Silverlight 事件
(12)Silverlight 輸入控制項
(13)第二天家庭作業
(14)第二天家庭作業解決方案 - 第1部分
(15)第二天家庭作業解決方案 - 第2部分