用户登录后更新SettingsPane

时间:2014-01-14 20:10:53

标签: c# xaml windows-8.1

我希望有人可以帮助我。我要做的是在用户登录并进行身份验证后,我想更新设置窗格以显示注销(代替登录)以及我可能希望显示的其他设置。我已经创建了SettingsFlyout页面,只需要知道如何根据它们是否已登录来查看它们。请帮忙......先谢谢!!

1 个答案:

答案 0 :(得分:0)

因此,如果你没有使用MVVM,我会建议以下(在我看来有些黑客)方法。代码中的某个位置(可能是您根据登录状态创建要显示的页面)创建指向页面的属性。我们称这个位置为MainPage。

public static FrameworkElement SettingsPage { get; set; }

然后在您创建页面时:

var page = new SettingsFlyout( ); // Overly simplified
SettingsPage = page;

然后,在您拥有登录代码的地方,执行以下操作:

public void SetLoginStatus( bool loggedIn )
{
    if(loggedIn)
    {
        MainPage.SettingsPage.Visibility = Visibility.Visible;
    }
    else
    {
        MainPage.SettingsPage.Visibility = Visibility.Collapsed;
    }
}

那应该可以让你到达你需要的地方。但总的来说,这不是实现这一目标的最佳方式。你应该稍微研究一下MVVM,因为它在你克服了初始学习曲线(不是那么陡峭)后很简单地解决了很多这些数据通信问题。祝你好运!