File Activation in Windows RT

The code sample for file activation on MSDN is lacking some code Winking smile so a simple way to pass the file clicked to your MainPage could be:

protected override void OnFileActivated(FileActivatedEventArgs args)

{

    var page = new Frame();

    page.Navigate(typeof(MainPage));

    Window.Current.Content = page;

 

    var p = page.Content as MainPage;

    if (p != null) p.FileEvent = args;

    Window.Current.Activate();

}

And in MainPage:

public MainPage()

{

    InitializeComponent();

    Loaded += MainPageLoaded;

}

void MainPageLoaded(object sender, RoutedEventArgs e)

{

    if (FileEvent != null && FileEvent.Files.Count > 0)

    {

        //… do something with file

    }

}

No Comments