EventArgs之间的铸造

本文关键字:之间 EventArgs | 更新日期: 2023-09-27 18:00:19

在Windows运行时应用程序中的页面之间导航时,我很难访问原始FileActivatedEventArgs

在页面之间导航时,EventArgs变为NavigationEventArgs,每当我尝试将其转换为FileActivatedEventArgs时,它都会抛出一个错误。

我甚至不能将它强制转换为System.EventArgs来从那一点进行一些继承

有人能帮我吗?

我调用Frame.Navigate(***,args)在页面之间导航。

进行呼叫的页面:

protected void IsPurchased(FileActivatedEventArgs args)
{
    Frame.Navigate(typeof(Mypage),args)
}

接收呼叫的页面

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    StorageFile SF;
    SF = (FileActivatedEventArgs)e;
}

EventArgs之间的铸造

当您将参数传递给Navigate时,此参数不会直接传递到NavigatedTo事件;它被作为CCD_ 8的属性传递。

要检索它,您应该执行以下操作:

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    var fileActivatedArgs = (FileActivatedEventArgs)e.Parameter;
    var file = fileActivatedArgs.Files[0];
}