Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用事件VisibilityChanged?_C#_Xaml_Windows Phone 8.1 - Fatal编程技术网

C# 如何使用事件VisibilityChanged?

C# 如何使用事件VisibilityChanged?,c#,xaml,windows-phone-8.1,C#,Xaml,Windows Phone 8.1,当应用程序从后台恢复时,我需要重新运行dela方法OnNavigatedTo()中包含的代码。 为此,我需要更改事件的可见性: 通过此事件,每次从后台再次打开应用程序时,dell'OnNavigatedTo中包含的代码将再次运行。我如何使用该事件?我不能。只有当页面不在后台时,可见性更改才相关。每次打开应用程序时,它都会转到OnNavigatedTo(),您可以创建bool或计数器来检查这是否是您第一次进入页面,然后根据OnNavigatedTo中的内容决定要执行的操作。例如: private

当应用程序从后台恢复时,我需要重新运行dela方法OnNavigatedTo()中包含的代码。 为此,我需要更改事件的可见性:


通过此事件,每次从后台再次打开应用程序时,dell'OnNavigatedTo中包含的代码将再次运行。我如何使用该事件?我不能。

只有当页面不在后台时,可见性更改才相关。每次打开应用程序时,它都会转到OnNavigatedTo(),您可以创建bool或计数器来检查这是否是您第一次进入页面,然后根据OnNavigatedTo中的内容决定要执行的操作。例如:

private override void OnNavigatedTo(NavigationEventArgs e)
{
     if(hasBeenHere) Repeat_Visit(args);
     else First_Visit(args);
}

从后台恢复应用程序时,将触发应用程序激活事件

从WP8.1模板的App.xaml.cs:

    // Code to execute when the application is activated (brought to foreground)
    // This code will not execute when the application is first launched
    private void Application_Activated(object sender, ActivatedEventArgs e)
    {
         // your code
    }

编辑:从app.xaml.cs调用主页面上的方法已在此处得到回答:

该事件没有为您提供所需的功能
VisibilityChanged
正如MSDN链接所述,仅当窗口的
.Visible
属性更改时才会激发。当应用程序置于后台或最小化并还原时,该属性不会更改。如何解决我的问题?问题是应用程序不再以OnNavigatedTo()方法从page app.xaml.cs返回。如何访问按钮和TextBlock MainPage.cs?为此,我需要重复dell'Onnaivgated中的代码,并将答案与您的问题的回答进行配对。
    // Code to execute when the application is activated (brought to foreground)
    // This code will not execute when the application is first launched
    private void Application_Activated(object sender, ActivatedEventArgs e)
    {
         // your code
    }