2013-05-29 2 views
3

현재 C#을 사용하여 Windows Store 응용 프로그램을 개발 중입니다. 내 응용 프로그램에서 다음 코드를 사용하여 내 기능 중 하나를 시작 화면에 고정하려면 보조 타일 옵션을 사용하고 있습니다.Windows의 SecondaryTile에서 특정 페이지를 탐색하는 방법 앱을 저장 하시겠습니까?

if (SecondaryTile.Exists(TileId)) 
      { 
       var secondaryTile = new SecondaryTile(TileId); 
       await econdaryTile.RequestDeleteForSelectionAsync(GetElementRect((FrameworkElement)sender), Placement.Above); 
      } 
      else 
      { 
       var logo = new Uri("ms-appx:///Assets/A.png", UriKind.RelativeOrAbsolute); 

       var secondaryTile = new SecondaryTile 
       { 
        Logo = logo, 
        TileId = TileId, 
        ShortName = "AAAA", 
        Arguments = TileId + DateTime.Now.ToLocalTime(), 
        DisplayName = "AAAAAAA BBBBBBB", 
        TileOptions = TileOptions.ShowNameOnLogo, 
        ForegroundText = ForegroundText.Dark 
       }; 

       await secondaryTile.RequestCreateForSelectionAsync(GetElementRect(sender as FrameworkElement), Placement.Above); 
      } 

이제는 보조 화면을 시작 화면에 호스팅합니다. 그러나 사용자가 시작 화면에서 SecondaryTile을 클릭 할 때마다 페이지 "A"로 이동해야합니다. Windows Store 응용 프로그램에서이 문제를 해결할 수 있습니까?

답변

4

네,하지만 또 다른 SecondaryTile 생성자를 사용하여 타일 ID와 함께 일부 인수를 전달해야합니다. Tile ID 만 사용하여 앱을 시작해야 할 페이지를 결정할 수 있기 때문에 다른 생성자를 사용할 필요는 없지만 인수를 사용하여 페이지 이름이나 ID를 보내는 것이 더 좋습니다.

Documentation says that arguments is:

호출 응용 프로그램에 의미있는 앱 정의 문자열

public SecondaryTile(
    string tileId, 
    string shortName, 
    string displayName, 
    string arguments, 
    TileOptions tileOptions, 
    Uri logoReference 
) 

. 이 앱이 보조 타일에서 으로 활성화되면 인수 문자열이 앱으로 다시 전달됩니다. 2048자를 초과하면 잘립니다. 는

그래서 당신은 사용자가 보조 타일을 클릭하면 시작 다음 App.xaml.cs를에 사용되어야하는 페이지를 식별하는 캐릭터 라인을 통과 할 수있는 인수 속성을 통해 설정하거나 검색 할 수 있습니다 응용 프로그램이 활성화OnLaunched 방법 : 당신은 또한 OnLaunched 방법 args.PreviousExecutionState 알고 있어야

async protected override void OnLaunched(LaunchActivatedEventArgs args) 
{ 
    var tile_id = args.TileId; 
    var tile_arguments = args.Arguments; 
    // Depending on tile_id and tile_arguments navigate to the page you want 
} 

참고. OnLaunched 방법은 이만 있으면 안됩니다.

+0

도와 주셔서 감사합니다. :) –

+2

오늘 당신을 도왔습니다. 내일 도울 것입니다! 이것은 stackoverflow입니다 :) – letiagoalves

관련 문제