Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här självstudien visar hur du använder navigering och databindning i en WinUI 3-app med XAML och C#.
I den här tutorialen lär du dig följande:
- Aktivera
NavigationCacheModeför att behålla samma instans av enPagenär du navigerar. -
INotifyPropertyChangedImplementera gränssnittet för att låta en databindning veta att data har uppdaterats. - Skicka objekt mellan sidor när du navigerar.
Den här självstudien bygger vidare på exempelappen WinUI Notes från självstudien Skapa din första WinUI 3-app. Om du har slutfört självstudien kan du fortsätta arbeta med samma kod. Eller så kan du ladda ned den färdiga koden för den självstudien från den GitHub lagringsplatsen och använda den som utgångspunkt för den här självstudien.
I båda fallen bör du känna till begrepp som presenteras och koden som skapades i självstudien Skapa din första WinUI 3-app .
Tip
Du kan också ladda ned eller visa den färdiga koden för den här självstudien från GitHub-repot med namnet WinUI Notes del 2. Om du vill se skillnaderna mellan projektets start- och slutpunkt, se denna commit: uppdateringar för del 2.
Background
För att hålla saker enkla och introducera några grundläggande begrepp fokuserar självstudien Skapa din första WinUI 3-app på enkelhet framför effektivitet. Så medan appen fungerar finns det vissa saker som kan förbättras.
Det viktigaste problemet har att göra med att navigera mellan sidor i appen. Som standard sparas inte instanser av Page vid navigering, så varje gång du navigerar till en Page, skapas en ny instans. I WinUI Notes-appen notesModel skapas objektet i AllNotesPage konstruktorn och fylls i genom att läsa alla anteckningar från filsystemet.
public sealed partial class AllNotesPage : Page
{
private AllNotes notesModel = new AllNotes();
...
}
Varje gång du navigerar från NotePage tillbaka till AllNotesPagenotesModel återskapas alla anteckningar från filsystemet. Den här ineffektiviteten är vanligtvis inte märkbar i en liten exempelapp utan mycket data, men det skulle vara oacceptabelt i till exempel en fotoapp som läste tusentals stora bilder från filsystemet.
För att åtgärda problemet går den här handledningen igenom följande steg:
- Kontrollera först att instansen cachelagras så att den
Pageåteranvänds och inte återskapas vid navigeringen. -
NoteUppdatera klassen så att bundna egenskaper meddelas när det finns ändringar i anteckningstexten. - Se till att
notesModelär korrekt uppdaterad med sparade eller borttagna anteckningar, eftersom den inte återskapas med varje navigering.
Tip
Du refererar ofta till API-referensdokument och konceptuella dokument när du skapar Windows-appar. I den här självstudien visas länkar infogade i texten och i grupper märkta "Läs mer i dokumenten:". Dessa länkar är valfria. du behöver inte följa dem för att slutföra självstudien. De tillhandahålls om du vill anteckna var du hittar den information du behöver när du börjar skapa dina egna appar.
Windows developer