C# 从非UI类windows phone 8访问应用程序栏

C# 从非UI类windows phone 8访问应用程序栏,c#,windows-phone-8,application-bar,C#,Windows Phone 8,Application Bar,在我的windows phone应用程序中,我有一个非UI类,当从UI页面调用时,它将显示和隐藏一个弹出屏幕 我想在弹出窗口显示时隐藏应用程序栏,在弹出窗口关闭时再次显示应用程序栏 现在的挑战是,我在非UI类中有一个计时器,用于处理弹出窗口的关闭。因此,从UI类中,我只能启动弹出窗口。关闭由非UI类控制。所以现在我需要从非UI类访问appbar 如果我能做到,有人能帮我吗?如果做不到,有人能帮我吗 谢谢。也许利用以下资源会有所帮助: private void myPopup_Close(obje

在我的windows phone应用程序中,我有一个非UI类,当从UI页面调用时,它将显示和隐藏一个弹出屏幕

我想在弹出窗口显示时隐藏应用程序栏,在弹出窗口关闭时再次显示应用程序栏

现在的挑战是,我在非UI类中有一个计时器,用于处理弹出窗口的关闭。因此,从UI类中,我只能启动弹出窗口。关闭由非UI类控制。所以现在我需要从非UI类访问appbar

如果我能做到,有人能帮我吗?如果做不到,有人能帮我吗

谢谢。

也许利用以下资源会有所帮助:

private void myPopup_Close(object sender, System.EventArgs e)
{
   // get current Page
   var currentPage = ((App.Current as App).RootVisual as PhoneApplicationFrame).Content as PhoneApplicationPage;
    // hide popup
    currentPage.ApplicationBar.IsVisible = true;
}

您不应该从非UI类访问UI,因为它是非UI类。它应该只是向一个UI类发出它应该更新UI的信号,例如通过事件、回调等。具体来说,如何根据上下文而变化。在我的例子中,这相当复杂,因为许多UI页面都使用该类。因此,发出信号是困难的。有可能做到这一点吗?是的,有。正如我所说,它应该触发一个事件,接受回调,返回一个
任务
,或者一些其他类似的异步机制,用户界面可以在适当的时间进行自我更新。你能给我提供一些链接或一些详细的信息吗?看看,它正是你想要做的。搜索
应用程序栏
@按欢迎使用。请注意,上面的代码非常简单,应该加以改进。在那里你可以找到很多信息。谢谢。我会查清楚的。