Navigating Between Pages in .NET MAUI [6 of 8] | .NET MAUI for Beginners

Ғылым және технология

Learn more ➡️ learn.microsoft.com/training/...
View full playlist: aka.ms/dotnet/beginnervideos/...
Get Started with .NET in Visual Studio: aka.ms/dotnet/get-started/vs
Welcome to the .NET MAUI for Beginners Series where you will learn the basics of building multi-platform apps with .NET MAUI for iOS, Android, macOS, and Windows from a shared C# code base. In this video, James shows off how to use the built-in navigation system of .NET MAUI to easily navigate between pages of the application with a URL based schema, and how to pass full objects as well.
Follow along: aka.ms/dotnet/beginnervideos/...
4 Hour .NET MAUI Workshop: • Learn .NET MAUI - Full...
Follow James:
- James on KZread: / jamesmontemagno
- James on Twitter: / jamesmontemagno
Links:
- .NET MAUI Self-guided Learning on Microsoft Learn: aka.ms/dotnetmaui-beginner/ms...
- .NET MAUI Website: aka.ms/dotnetmaui-beginner/we...
- Install .NET MAUI: aka.ms/dotnetmaui-beginner/in...
- My Tasks Sample: aka.ms/dotnetmaui-beginner/my...
- .NET MAUI Documentation: aka.ms/dotnetmaui-beginner/docs
- .NET MAUI on GitHub: aka.ms/dotnetmaui-beginner/gi...
- .NET MAUI Workshop: aka.ms/maui-workshop
- .NET Community Toolkit Docs: aka.ms/dotnetmaui-beginner/to...
- .NET Community Toolkit GitHub: aka.ms/dotnetmaui-beginner/to...
- More .NET Beginner Series Videos: dot.net/videos
- .NET KZread - / dotnet
- .NET on Twitter - / dotnet
Corrections:
08:20 - [ICommand] is now [RelayCommand] in the final version of community toolkit for mvvm
14:35 - [ICommand] is now [RelayCommand] in the final version of community toolkit for mvvm
#dotnet #dotnetmaui #ios #android #windows #macos #csharp
🙋‍♀️🙋‍♂️ Get your questions answered on the Microsoft Q&A for .NET: aka.ms/dotnet-qa
🏫 Learn C#, F#, and .NET with free self-guided learning from Microsoft Learn: aka.ms/learndotnet

Пікірлер: 81

  • @dotnet
    @dotnet Жыл бұрын

    Correction: 08:20 - [ICommand] is now [RelayCommand] in the final version of community toolkit for mvvm Correction: 14:35 - [ICommand] is now [RelayCommand] in the final version of community toolkit for mvvm

  • @neofox2526
    @neofox252610 ай бұрын

    I come back to this video everytime i need to add a new page lmao

  • @Tajemniczy
    @Tajemniczy Жыл бұрын

    Big thanks for this:). I was thinking about starting something with xamarin but from what I see this MAUI will be better because also I will have desktop apps ^^:)

  • @drivetrainerYT
    @drivetrainerYT Жыл бұрын

    It’s simple: I see James quality footage - I like the vid and use the knowledge. Great explanations.

  • @ajonescouk
    @ajonescouk Жыл бұрын

    Really useful for someone coming from MVVM in WPF, thank you! One question - is there any tool that will parse the project and create a navigation map for reference? Seems a tool like that would be useful for complex projects.

  • @muddy11112
    @muddy11112 Жыл бұрын

    Very Helpful thank you

  • @risesandhineempowerment
    @risesandhineempowerment Жыл бұрын

    Hey James - great lesson thanks and got it all working. What I can't work out how to do is to detect when the page is navigated away from using the back arrow at the top of the screen. I've tried every event I can find but none of them seem to fire. Not sure what I'm doing wrong. Thanks 😊

  • @alevinciius
    @alevinciius Жыл бұрын

    Obrigado. Deus te abençoe

  • @stevenkjames
    @stevenkjames4 ай бұрын

    Cool!

  • @androidsavior
    @androidsavior4 ай бұрын

    What if i the details page needs to pull the details from the server and show them in the view ? shall i call the server in the constructor of the view model or what ?

  • @ITSligoPaul
    @ITSligoPaul11 ай бұрын

    At what stage in the MMVM lifecycle does resolution of the Query Property in the View model occur?

  • @zikkrype
    @zikkrype Жыл бұрын

    I'm getting "Global routes currently can't be the only page on the navigation stack", and similar with relative path as well

  • @purplepanther4153
    @purplepanther4153 Жыл бұрын

    Text Field is null or Empty On DetailViewModel, I would like to get the value and pass to service to get the detail. How would I complish this.?

  • @lebeluet
    @lebeluet Жыл бұрын

    Question: Why didn't you create the Views folder to place the "DetailPage.xaml" file in this folder ?

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    Just how I organize my code. Some folks like a folder named Pages or Views

  • @autbeamukda9431
    @autbeamukda9431 Жыл бұрын

    I got breakmode when I tap the task so did I do something wrong ? :( System.NullReferenceException: 'Object reference not set to an instance of an object.'

  • @hungchip
    @hungchip5 ай бұрын

    where i can read document at 11:46 (Transfer/Pass Variable type of Class.cs? And how to read/get/show it from Form Receive?

  • @jonathanj2666
    @jonathanj2666 Жыл бұрын

    When i debug on an actual android phone and attempt to klick the text string to get to the detailpage i get an error saying the "application is in break mode", but i can't seem to fix it. Any suggestions?

  • @meng-hub
    @meng-hub5 ай бұрын

    Cool! However, most interested if you can tell is you can access incoming sms's or texts from the android or ios , or either you can use the camera and read QR's , do you have that capabilities in MAUI ..?????????

  • @afgdfdgdfddf42
    @afgdfdgdfddf4210 ай бұрын

    Swipe does not work under Windows machine. But it works when I choose Android. Maui early days with some bugs?

  • @scara1701
    @scara1701Ай бұрын

    Are we not breaking the principle of MVVM by using Shell in the viewmodels for navigation? The viewmodel seems to be no longer independant from the UI framework.

  • @Remusqs1
    @Remusqs110 ай бұрын

    The Go Back button is actually unnecessary in this case. It seems that the build-in navigation of Maui implements an "Auto Go Back" witch actually has a better and smoother transition

  • @stevenkjames
    @stevenkjames4 ай бұрын

    Cool

  • @faranahmadk7401
    @faranahmadk74017 ай бұрын

    Hi James, I like all your videos But I have question. Is it possible to pass data to two different pages at the same time. How to do it ? I tried it but it goes to the first page then second page but I just want to pass the data without navigation. Please guide.

  • @enricoroselino7557
    @enricoroselino755710 ай бұрын

    im stuck on third page, and cant go back to prev page... confused af

  • @GAMacky
    @GAMacky Жыл бұрын

    Great video. I just discovered an issue that I'm not sure how to resolve. The query parameter passed into the new page will not set to the query properties in the ViewModel until after the constructor of the viewmodel is completed. This means that I can't get any data to load inside constructor. For example, I pass an itemId from the collectionView page to the detail page, I'm not able to load the item object using the itemId until after the constructor is completed. So this means I can't use the community toolkit's [ObservableProperty] as I'll need to customize the set method on the query parameter property to load the item using the newly set itemId.

  • @MrJorgeandres12

    @MrJorgeandres12

    Жыл бұрын

    I had the same issue, what I have done is load the data in the ApplyQueryAttributes() function, so you will load the data once the query parameters be set

  • @silakanveli
    @silakanveli7 ай бұрын

    It is just crazy how much overhead there is when I just want to create simple navigation..makes no sense. Absolutely over engineered

  • @akeemaweda1716

    @akeemaweda1716

    7 ай бұрын

    I don't think your assertion is correct. It's perhaps the most intuitive I have seen. Kindly check, compare and contrast again, objectively.

  • @bodyavl
    @bodyavl Жыл бұрын

    Is there any way to pass collections between pages? Or raise some method from viewmodel when it's been navigated to?

  • @1akemper

    @1akemper

    Жыл бұрын

    I would love to know the view model nav too

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    You can pass them as data properties - learn.microsoft.com/en-us/dotnet/maui/fundamentals/shell/navigation?view=net-maui-7.0#pass-data

  • @kabeernarang3936
    @kabeernarang3936 Жыл бұрын

    Can you give me 100x200 size modal page example with progress bar and close button

  • @user-px4dw3bs9u
    @user-px4dw3bs9u2 ай бұрын

    Why not use the Item Tapped event method to navigate to DetailPage?

  • @slimdridi2740
    @slimdridi2740 Жыл бұрын

    and how to create dialog with a password type in blazor maui

  • @liemnguyen3088
    @liemnguyen30884 күн бұрын

    How to handle OnNavigatedTo of DetailPage, Thank!

  • @mugileeshwaranj.s8484
    @mugileeshwaranj.s84842 ай бұрын

    How to handle navigation in non UI classes, i have to use navigation inside the class which is inside andriod folder..

  • @creativemoreafrica3020
    @creativemoreafrica3020 Жыл бұрын

    Hi James, Hi like all your videos but i have question. It possible to pass the object in QueryProperty ? How to do it ?

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    Absolutely - learn.microsoft.com/en-us/dotnet/maui/fundamentals/shell/navigation?view=net-maui-7.0#pass-data

  • @EdRawrDev5813
    @EdRawrDev5813 Жыл бұрын

    will NavigationPage.HasNavigationBar="true" still working like default nav back?

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    Yes should

  • @selfreliantfarmer
    @selfreliantfarmer Жыл бұрын

    Does anyone know how to add a login page to this solution?

  • @sinsedrix
    @sinsedrix2 ай бұрын

    Navigation seems so broken on windows. Mixing GoToAsync and PushAsync has hazardous behaviour. Back shell button works when it want. When navigation stack is over 2 element, app crashes. Ambiguous routes problem is recurrent. Would you consider making a new tuto about navigation with more use cases?

  • @ernesteiradukundasenga92
    @ernesteiradukundasenga92 Жыл бұрын

    When I try to add another item after deleting the previous one the program crushes immediately.

  • @akashsoni1530
    @akashsoni15305 ай бұрын

    This navigations works fine on the Emulator but when I use the same app on MI K50i phone the navigation doesn't work. It gives error

  • @olayemiafolabi6091
    @olayemiafolabi6091 Жыл бұрын

    I need MAUI code to get android or ios device id

  • @Romahotmetytky
    @Romahotmetytky Жыл бұрын

    And how are you going to UnitTest the Tap(string s) method huh ? you are using Static Shell class there for me that is a code smell, and now you cannot use user view model by different framework e.g wpf or winui cause you are depending on Shell

  • @strictnonconformist7369

    @strictnonconformist7369

    Жыл бұрын

    This is a beginner's set of lessons. Myself, I'd pass in a reference via the constructor to an interface that does what is needed so it's not so tied to the framework details.

  • @carsonwardell551
    @carsonwardell5518 ай бұрын

    12:08 where is the documentation for passing objects?

  • @Vitorgasparete
    @Vitorgasparete Жыл бұрын

    Why the GoBack Command needs to be async?

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    Navigation is asynchronous that is why. Just a best practice

  • @DivanProdOfficial
    @DivanProdOfficial Жыл бұрын

    How is this for beginners? I wonder how is the advanced part

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    If you are looking for more of an overview intro checkout kzread.info/dash/bejne/pKmhyKugadSwj7w.html

  • @tasoscat4295
    @tasoscat42952 ай бұрын

    my GoBack button is not working. Any suggestions?

  • @bohodirjonmirzayev2553
    @bohodirjonmirzayev2553 Жыл бұрын

    Swipe is not works on Windows, how can i solve it?

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    On windows they work if you are on a touch screen else there is a new context menu: devblogs.microsoft.com/dotnet/5-dotnet-maui-desktop-features/#context-menus

  • 2 ай бұрын

    Oh, most boring MVVM code lines in setters OnPropertyChanged will be gone? Next thing will be .ConfigureAwait(false)?

  • @SuchithM
    @SuchithM Жыл бұрын

    Any example for content page navigation

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    Shell navigation: learn.microsoft.com/en-us/dotnet/maui/fundamentals/shell/navigation?view=net-maui-7.0 or NavigationPage style: learn.microsoft.com/en-us/dotnet/maui/user-interface/pages/navigationpage?view=net-maui-7.0

  • @SuchithM

    @SuchithM

    Жыл бұрын

    @@JamesMontemagno thank you 😊

  • @forum_warrior_X
    @forum_warrior_X Жыл бұрын

    Please somebody explain to me, why? WHY does every video about learning anything must contain that annoying idiotic background music which makes it harder to concentrate on speech? Thank you.

  • @andrewbpc

    @andrewbpc

    Жыл бұрын

    It's better than indian programming tutotrial with background noises)

  • @light-water

    @light-water

    Жыл бұрын

    That was my comment, I actually couldn't follow along because of the background music.

  • @prestigiousaristocracy4232

    @prestigiousaristocracy4232

    Жыл бұрын

    @@andrewbpc 🤣🤣🤣🤣

  • @strictnonconformist7369

    @strictnonconformist7369

    Жыл бұрын

    I'd suggest it be removed for the sake of Accessibility, as Microsoft in many aspects tries to provide for that. Myself, I have a degenerative inner ear disorder also slowly destroying my hearing, and difficulty processing speech anyway. I'm calling on James to have no background music for that reason.

  • @lunatuna5203
    @lunatuna5203 Жыл бұрын

    SwipeView doesn't work with the Windows 10 mouse. Buddy!

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    On windows they work if you are on a touch screen else there is a new context menu: devblogs.microsoft.com/dotnet/5-dotnet-maui-desktop-features/#context-menus

  • @light-water
    @light-water Жыл бұрын

    The music was a little distracting

  • @HackelSchorsch
    @HackelSchorsch Жыл бұрын

    The music in the background is really unnecessary and annoing. I want to concentrate on MAUI stuff.

  • @zoliking
    @zoliking Жыл бұрын

    "for Beginners", lol. I don't think so.

  • @JamesMontemagno

    @JamesMontemagno

    Жыл бұрын

    If you are looking for more of an overview intro checkout kzread.info/dash/bejne/pKmhyKugadSwj7w.html

  • @zoliking

    @zoliking

    Жыл бұрын

    @@JamesMontemagno Thank you.

  • @jmpeax3596
    @jmpeax35965 ай бұрын

    The never-changing "music" gets very annoying very quickly!

  • @neofox2526
    @neofox2526 Жыл бұрын

    goofy fall guys music 💀💀

  • @jawadhasaneducation
    @jawadhasaneducation5 ай бұрын

    background music is distracting and un-necessary in my opinion

  • @rds9799
    @rds97992 ай бұрын

    nihuya ne ponyatno bro. govori na russkom

Келесі