我正在开发一个登录屏幕,用户需要在其中介绍他们的数据然后提交。
我的注意事项:我考虑过使用Page,但最终我拒绝了这个想法,因为如果我在MainPage之前放置Login页面,那么如果我从MainPage返回,那么它将转到Login页面,这是不是我想要的。如果登录页面是在MainPage之后,那么如果我第一次执行该应用程序而没有登录,如果我按回去,那么它将转到我不想要的MainPage。
问题:我最终决定使用Popup。目前看起来很完美,但是当我想使用文本框时,键盘与该文本框重叠,我想要的是将Popup向上移动,就像普通页面一样。我不知道是否可能,否则我愿意听到一些替代方案。
提前谢谢。
答案 0 :(得分:1)
在WMAppManifest.xml
移除Navigation Page
的属性,在App.xaml.cs
中,你有以下内容:
private void Application_Launching(object sender, LaunchingEventArgs e)
{
LoadDefautPage();
}
void LoadDefautPage()
{
if (StartForFirstTime)//tombstone local variable
{
if (!IsLoggedIn)//flag save it in IsolatedStorageSettings
{
RootFrame.Navigate(new Uri("/LoginPage.xaml", UriKind.Relative));
}
else
{
RootFrame.Navigate(new Uri("/MainPage.xaml", UriKind.Relative));
}
StartForFirstTime = false;
}
}
最后删除MainPage中的Back Entry:
protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
{
while (this.NavigationService.CanGoBack)
{
this.NavigationService.RemoveBackEntry();
}
}
这只是一个想法,让我知道它是怎么回事(: