2014-10-29 136 views
1

我正試圖在Windows Phone啓動屏幕上創建一個平鋪。下面的代碼用於工作,但現在不行。我沒有改變任何東西。如何在Windows Phone 8.1上創建SecondaryTile?

private async static void CreateTile() 
    { 
     try 
     { 
      SecondaryTile tileData = new SecondaryTile() 
      { 
       TileId = "MyTileID", 
       DisplayName = "My App Name", 
       TileOptions = TileOptions.ShowNameOnLogo, 
      }; 

      tileData.VisualElements.Square150x150Logo = new Uri("ms-appx:///Resources/Images/Tiles/150150.png", UriKind.Absolute); 
      tileData.VisualElements.ShowNameOnSquare150x150Logo = true; 

      await tileData.RequestCreateAsync(); 
     } 
     catch (Exception ex) 
     { 

     } 
    } 

現在它的失敗與錯誤消息:

The parameter is incorrect. 

和以下堆棧跟蹤:

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 
    at My.Namespace.SplashPage.<CreateTile>d__f.MoveNext() 

我甚至得到的錯誤,當我評論的一切,例如:

SecondaryTile tileData = new SecondaryTile() 
{ 
    //TileId = "MyTileID", 
    //DisplayName = "My App Name", 
    //TileOptions = TileOptions.ShowNameOnLogo, 
}; 

//tileData.VisualElements.Square150x150Logo = new Uri("ms-appx:///Resources/Images/Tiles/150150.png", UriKind.Absolute); 
//tileData.VisualElements.ShowNameOnSquare150x150Logo = true; 

await tileData.RequestCreateAsync(); 

所以我不知道哪個參數不正確。什麼可能導致這個?我該如何解決它?

+1

嘗試使用[這](http://msdn.microsoft.com/en-us/library/windows/apps/dn251589.aspx)構造函數或設置所有相應的屬性(參數是我認爲可能是問題)。此外,這是一個Silverlight或Xaml/WinPRT應用程序? – yasen 2014-10-29 16:42:55

+0

這是一個WinRT應用程序。我會在早上試試你的建議。謝謝。 – DaveDev 2014-10-29 16:51:03

+0

它適合你嗎?我可能會使用FlipTileData。 – 2016-01-04 13:35:29

回答

1

嘗試這樣的:

if (SecondaryTile.Exists(tileID)) await tileData.UpdateAsync(); 
    else await tileData.RequestCreateAsync(); 
相關問題