FirstUse Tutorial starten
Hallo Zusammen
ich würde gerne ein First Use Tutorial erstellen. Das würde ich gerne starten wenn das Programm das erste mal gestartet wird. Die Abfrage ob das passieren soll oder nicht, ist soweit kein Problem. Aber wo muss ich diese Abfrage starten?
In der MainPage kann ich die Navigation nicht durchführen, oder besser gesagt die App stürzt mit einer nullReferenceException ab.
Hat jemand eine Idee?
Gruss
Nemoc
AW: FirstUse Tutorial starten
Mein Ansatz wäre jetzt einfach eine Variable im IsolatedStorage anzulegen, die bezeichnet, ob die App schon einmal geöffnet wurde. Dies solltest du am besten beim Programmstart selbst, also in der App.xaml.cs Datei in der private void Application_Launching(object sender, LaunchingEventArgs e) Methode abfragen und dann die Werte innerhalb deiner App so setzten, dass die MainPage weiß, ob sie das Tutorial anzeigen soll, oder nicht.
AW: FirstUse Tutorial starten
Also ich mache dies so, dass ich für solche Tutorials ein Popup benutze und dieses dann im Konstruktor der MainPage aufrufe.
Dies hat den Vorteil, dass das Tutorial nicht im Backstack bleibt und somit nicht beim Beenden der App nochmal durchgegangen werden muss.
Hier mal so der Ansatzcode:
Code in App.xaml.cs:
Code:
private static System.Windows.Controls.Primitives.Popup _Popup = null;
public static System.Windows.Controls.Primitives.Popup Popup
{
get
{
// Delay creation of the view model until necessary
if (_Popup == null)
_Popup = new System.Windows.Controls.Primitives.Popup();
return _Popup;
}
}
Code zum Aufrufen und setzen des Inhalts des Popups:
Code:
App.Popup.Child = new TutorialPage();
App.Popup.IsOpen = true;
Wobei du in deinem Fall jetzt die Page TutorialPage haben müsstest. Eine ganz normale Silverlight Page, mit dem einen Unterschied, dass der Background gesetzt sein muss, sonst ist dieser durchsichtig und du siehst deine MainPage dadrunter.
Wenn das Tutorial dann fertig ist, kannst du ganz einfach mit:
App.Popup.IsOpen = false;
das Popup schließen und der User sieht deine MainPage
Zusätzlich könntest du dem noch, wenn es den Anlass dazu gibt, wenn die Back-Taste gedrückt wird auf der MainPage dies abfangen und wenn das Popup offen ist, dieses schließen und die App nicht beenden.
Aber das scheint mir in deinem Fall nicht wichtig zu sein.
Hoffe das Hilft.
AW: FirstUse Tutorial starten
Cool, Danke. werde es morgen Abend ausprobieren =)
AW: FirstUse Tutorial starten
Habs nun so gemacht wie von dehoDev beschrieben. Klappt wunderbar =)
Danke vielmals