ich eine Tabbed-Seite wie diese bin mit:Gibt es Leistungs- oder Codierungsprobleme beim Übergeben eines Objekts an mehrere Seiten, um Variablen für Registerkartenseiten freizugeben?
public partial class MainPage : TabbedPage
{
public MainPage()
{
InitializeComponent();
var phrasesPage = new NavigationPage(new PhrasesPage())
{
Title = "Play",
Icon = "play.png"
};
....
Children.Add(phrasesPage);
Children.Add(categoriesPage);
Children.Add(favoritesPage);
Children.Add(settingsPage);
Children.Add(aboutPage);
}
Ich möchte Variablen zwischen meinen Seiten teilen. Zum Beispiel eine Score-Nummer, die auf allen Seiten und einigen anderen Variablen angezeigt wird.
Ich möchte meine Anwendung so programmieren, dass sie einfach zu pflegen ist.
public partial class MainPage : TabbedPage
{
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public Person(){}
public Person(string name, int age)
{
Name = name;
Age = age;
}
}
public MainPage()
{
InitializeComponent();
var person = Person p=new Person()
{
Name = "Han Solo",
Age = 39
};
var phrasesPage = new NavigationPage(new PhrasesPage(person))
{
Title = "Play",
Icon = "play.png"
};
....
....
Children.Add(phrasesPage);
Children.Add(categoriesPage);
Children.Add(favoritesPage);
Children.Add(settingsPage);
Children.Add(aboutPage);
}
Kann mich jemand raten, wenn es gut sei, um ein Objekt zu erstellen, die all freigegebenen Variablen enthalten und dann das Objekt an den Konstruktor von jedem der Seiten als Parameter zu übergeben, wenn die Seiten mit einem erstellt werden "Neu"?
Das sieht gut aus. Also habe ich recht, wenn ich sage, dass Sie diesen Code in eine Datei im gemeinsamen Projekt eingefügt haben, und es kann verwendet werden. – Alan2
@Alan yep es ist bereit zu gehen, wie es ist, ich benutze es in den meisten unserer Cross-Plattform-Anwendungen, weil es so generisch und einfach zu implementieren ist. Versteht mich nicht falsch, es wird nicht in jeder Situation perfekt sein, aber es löst auf jeden Fall viele Probleme mit der Weitergabe von Daten zwischen Seiten/Ansichten usw. – Digitalsa1nt
Wenn es Ihnen nichts ausmacht, können Sie ein Beispiel für das Speichern und Abrufen geben ein Int und ein Objekt. Nur ein paar Zeilen. Am einfachsten kannst du aufkommen. Ich hoffe, dass es auch anderen helfen kann, da ich schon vorher darüber geschrieben habe, aber keine gute Antwort bekommen habe, bis ich die Frage ein wenig geändert habe. – Alan2