none
求助,Metro Share共享的问题。 RRS feed

  • 问题

  • 小弟有一个需求是这样的:从本地PHOTO程序SHARE图片到我的APP,

    现在有一个问题:如何响应用户点击左上角返回按钮事件,我需要在这个事件里调用

    ShareOperation

    shareOperation.ReportCompleted()

    来报告共享完成。

    因为如果不这么做,点击左上角按钮推出后再次快速进入(3秒以内),调用

    System.Diagnostics.

    Debug.WriteLine("OnShareTargetActivated,"+ args.PreviousExecutionState.ToString());

    发现SHARE APP仍处于Running状态,这样会导致一些崩溃等奇怪的问题。

    恳请BOb和各位大大解答 小弟感激不尽

    2012年9月14日 12:52

答案

  •     Window.Current.VisibilityChanged += Current_VisibilityChanged;
            void Current_VisibilityChanged(object sender, VisibilityChangedEventArgs e)
            {
                if (e.Visible == false)
                {
                      ...
                }
            }

    通过你的应用的当前窗体可见属性的变化来得知是否用户按了后退。Window.Current.Closed 事件也可以。

    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年9月17日 7:09
    版主

全部回复

  • 我也碰到类似问题,有人搞过吗?

    2012年9月14日 13:06
  • 我又研究了下,其实SHARE本质上是个BACKGROUND TASK,当点击左上角返回按钮后,后台任务并未立即终止。 调用shareOperation.ReportCompleted()应该才中止该后台任务。

    2012年9月15日 8:14
  •     Window.Current.VisibilityChanged += Current_VisibilityChanged;
            void Current_VisibilityChanged(object sender, VisibilityChangedEventArgs e)
            {
                if (e.Visible == false)
                {
                      ...
                }
            }

    通过你的应用的当前窗体可见属性的变化来得知是否用户按了后退。Window.Current.Closed 事件也可以。

    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年9月17日 7:09
    版主