[Windows Phone]動態磚FlipTile的使用及所帶參數之提取。

  • 1226
  • 0
  • 2014-01-22

[Windows Phone]動態磚FlipTile的使用及所帶參數之提取。

 

這裡簡單介紹FlipTile動態磚的使用跟回傳參數的取得。

 

 

 

 

1.先在「MainPage.xml」建立一個「Button」跟「TextBox」。

「Button」是觸發建立Tile的按鈕。「TextBox」是動態磚傳給程式的參數顯示。

1

 

 

 

 

2.

這邊先寫

   1: ShellTile FindTile = ShellTile.ActiveTiles.FirstOrDefault((t) => 
   2:     t.NavigationUri.ToString().Equals("/MainPage.xaml?number=99"));

 

 

 

 

此行是找尋此磚是否存在,不同參數的磚不會影響到。

 

 

此行的參數是「number」帶「99」。

 

 

 

 

3.判斷找尋的磚是否存在。若有存在就更新此磚;若沒有就新增。

   1: if (FindTile == null)
   2: {
   3:    FlipTileData fTile = new FlipTileData()
   4:    {
   5:        Title = "Flip",
   6:        BackTitle = "Test",
   7:        BackContent = "FlipTest",
   8:        Count = 1
   9:    };
  10:    ShellTile.Create(new Uri("/MainPage.xaml?number=99", UriKind.Relative), fTile, true);
  11: }
  12: else
  13: {
  14:    FlipTileData fTile = new FlipTileData()
  15:    {
  16:        Title = "Flip",
  17:        BackTitle = "Test",
  18:        BackContent = "FlipTest",
  19:        Count = 2,
  20:    };
  21:    FindTile.Update(fTile);
  22: }

 

 

其中,Count若為「0 」的話,Tiles左上數字將不會顯示。

 

 

 

最後,只要打「ShellTile.Create(new Uri("/MainPage.xaml?number=99", UriKind.Relative), fTile, true);」就可以創造動態磚了!

 

 

 

若打「FindTile.Update(fTile)」就可以更新剛剛所搜尋到的FlipTile了。

 

 

 

 

4.接下來要尋找並輸出按下動態磚所傳回的參數。

 

 

 

需要在「OnNavigatedTo」中打入程式,其說明是「在頁面變成框架中的使用中頁面時呼叫」。

 

 

 

之後需要加入判斷,若沒有加入判斷,只要程式一執行時就會進入「OnNavigatedTo」,但是只有在按下動態磚時才使用「OnNavigatedTo」。

 

   1: if (NavigationContext.QueryString.ContainsKey("number"))
   2: {
   3:     textbox.Text = this.NavigationContext.QueryString["number"];
   4: }

 

 

 

 

 

需要使用「ContainsKey()」,來判斷是否有所需要的值。

 

 

之後,在使用「QueryString[]」來擷取參數。

 

 

2

 

 

 

 

結果:

 

第一次建立FlipTile

按下FlipTile傳回參數

更新FlipTile

3-1 3-2 3-3

 

 

 

 

 

 

Reference

Windows Phone 8 – Tiles大進化

 

 

 

若有觀念錯誤、內容錯誤,勞請告知。 謝謝。

若要轉載請註明出處,謝謝。