Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.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# 如何正确获取主页?_C#_Uwp_Win Universal App_Windows 10 Universal - Fatal编程技术网

C# 如何正确获取主页?

C# 如何正确获取主页?,c#,uwp,win-universal-app,windows-10-universal,C#,Uwp,Win Universal App,Windows 10 Universal,我首先尝试了MainPage rootPage=newmainpage(),但这会引发一个错误 所以我尝试了官方的示例版本: [MainPage.xaml.cs] namespace-theMain { 公共密封部分类主页面:第页 { 公共静态主页当前; 公共类主页() { this.InitializeComponent(); 电流=这个; } 公共异步使FunctioninedToAccess无效(P1、P2) { //更新MainPage中的变量并更新UI } } } [OtherCod

我首先尝试了
MainPage rootPage=newmainpage()
,但这会引发一个错误

所以我尝试了官方的示例版本:

[MainPage.xaml.cs]

namespace-theMain
{
公共密封部分类主页面:第页
{
公共静态主页当前;
公共类主页()
{
this.InitializeComponent();
电流=这个;
}
公共异步使FunctioninedToAccess无效(P1、P2)
{
//更新MainPage中的变量并更新UI
}
}
}
[OtherCode.cs]

使用主菜单
另一个名称空间
{
公共密封部分类OtherClass
{
MainPage rootPage=MainPage.Current;//在调试模式下,我发现此处为null
私有无效
{
功能化访问(P1、P2);
}
}
}
这至少不会引发错误,但我始终为此获取
rootPage=null

我测试了统一名称(即两者的
名称空间theMain
),但这没有帮助

我在这里做错了什么


感谢您的帮助!:)

根据您的定义,
MainPage.Current
获取当前加载的
MainPage
的实例

如果您的
MainPage.Current
始终为空,请检查
MainPage
是否已加载到框架中。在加载
MainPage
之前,当您尝试获取
MainPage.Current
时,此时尚未分配
Current
,当然,它将显示为null

在App.xaml.cs中的
OnLaunched
方法中,有这样一段代码:

if(e.PrelaunchActivated==false)
{
if(rootFrame.Content==null)
{
导航(typeof(MainPage),例如参数);
}
Window.Current.Activate();
}
请确保在此代码完成执行后调用
MainPage.Current的方法


致以最诚挚的问候。

更好的设计是更新应用程序的状态,然后让UI对其作出反应,而不是试图直接驱动UI。任何时候,当您与应用程序中的另一个页面紧密耦合时,都表明可能有什么地方出了问题


在这种情况下,您可以在应用程序中的某个位置存储注册用户列表(可能是静态类,或者
App
对象的属性等),然后从该列表读取
MainPage
UI。请注意,这不会直接起作用,因为您可能需要处理跨不同线程的访问,但是
MainPage
有自己的帮助程序代码来监听更改事件,发送到正确的线程,然后通知应用程序,这很容易。

您能更清楚地了解您想要实现什么吗!?更清晰的需求可以帮助我们更好地理解它。为什么要从其他页面访问主页?您好,谢谢您的评论!我在主页上有一个
mainList
,其中存储了注册用户。我想更新列表和UI(MainPage.xaml),这样用户就可以知道他们是否成功注册/取消注册了我的服务。我检查了我可以使用官方样本访问主页;我不确定我错过了什么。