运行已经运行的应用程序时,子控件消失

时间:2012-02-17 20:16:49

标签: c# windows-phone-7 xaml

有点奇怪...当我的应用程序运行时,我点击按钮就会向StackPanel添加一个自定义控件,如此...

void btnAddPlayer_Click(object sender, EventArgs e)
{
   PlayerControl sbItem = new PlayerControl();
   ctlPanel.Children.Add(sbItem);
}

(ctlPanel是一个StackPanel PlayerControl是继承自UserControl的标准Control)

所以我添加一两个,不是问题...如果我在手机上多任务到另一个应用程序,然后多任务回到我的应用程序,没有问题...但是,如果我多任务离开(或点击Windows手机按钮),然后而不是多任务回来,我只是点击图标(好像我再次运行应用程序)它重新加载我的应用程序但没有任何PlayerControl在StackPanel ...而调试,它没有点击页面构造函数中的InitializeComponents()方法(当然这可能是因为它直接从菜单运行它可能不会调试它)

任何人都知道是否只允许应用程序运行一次(如果用户再次运行应用程序,则不要重新启动它)????

1 个答案:

答案 0 :(得分:0)

它不起作用。您可以保存应用程序的“状态”,并在启动应用程序时加载该状态。看看Windows手机的“Tombstoning”。例如,您可以在本地存储中保存当前屏幕ID和任何其他必要数据,当您启动应用程序时,如果您在本地存储中有某些内容,则会加载该屏幕,否则您将从主页开始。