C# 将Windows Phone 8设为一次性页面
我正在VS2012中为Windows Phone 8,C#/XAML制作一个应用程序。 现在,我想创建一个页面,该页面仅在安装应用程序且用户首次打开应用程序时运行。 从那以后就不会了 请帮忙,C# 将Windows Phone 8设为一次性页面,c#,visual-studio-2012,windows-phone-8,C#,Visual Studio 2012,Windows Phone 8,我正在VS2012中为Windows Phone 8,C#/XAML制作一个应用程序。 现在,我想创建一个页面,该页面仅在安装应用程序且用户首次打开应用程序时运行。 从那以后就不会了 请帮忙, 谢谢您可以使用XML文件编写一个值,该值表示页面是否已经显示。因此,在这个页面的构造函数中(或者更恰当地说,在它的OnLoad事件中),您可以将值写入XML文件,并说它已经被显示了。然后,在启动逻辑中,您可以读取该文件,如果该值已设置,则可以跳到其他页面 Xml文件 <StartupValues&g
谢谢您可以使用XML文件编写一个值,该值表示页面是否已经显示。因此,在这个页面的构造函数中(或者更恰当地说,在它的OnLoad事件中),您可以将值写入XML文件,并说它已经被显示了。然后,在启动逻辑中,您可以读取该文件,如果该值已设置,则可以跳到其他页面 Xml文件
<StartupValues>
<HasFirstTimePageDisplayed>True</HasFirstTimePageDisplayed>
</StartupValues>
App.xaml.cs
public void OnStartup( ... ) // I forget what the method signature for this is
{
bool displayFirstPage = true;
var xml = new XmlSerializer( typeof( StartupValues ) );
using( var reader= new StreamReader( "config_file_path_here.xml" ) )
{
StartupValues values = xml.Deserialize( reader.BaseStream ) as StartupValues;
displayFirstPage = values.HasFirstTimePageDisplayed;
}
if( displayFirstPage )
{
// display the page
}
else
{
// display a different page
}
}
StartupObject.cs
public class StartupValues
{
public bool HasFirstTimePageDisplayed { get; set; }
}
一些与你的问题相关的阅读材料:
阶级
阶级
(资源的好去处)抱歉,您能给我看一些参考代码、博客或其他东西吗?找不到类型或命名空间名称“StartupValues”(您是否缺少using指令或程序集引用?),这是您必须创建的对象。它需要具有表示要从Xml文件读/写的值的属性。我是这方面的初学者和noob…请帮助meI做到这一点,成为noob也没关系。我在我的答案中加了这个类。如果你对我的答案还有什么不确定的地方,你可以问,也可以用谷歌搜索。我会给它添加一些链接,这样你就有了一些阅读材料。但我真的无法解释得更透彻。另外,记住把标记作为答案!
public void OnStartup( ... ) // I forget what the method signature for this is
{
bool displayFirstPage = true;
var xml = new XmlSerializer( typeof( StartupValues ) );
using( var reader= new StreamReader( "config_file_path_here.xml" ) )
{
StartupValues values = xml.Deserialize( reader.BaseStream ) as StartupValues;
displayFirstPage = values.HasFirstTimePageDisplayed;
}
if( displayFirstPage )
{
// display the page
}
else
{
// display a different page
}
}
public class StartupValues
{
public bool HasFirstTimePageDisplayed { get; set; }
}