DotNet MAUI MVVM: Deep Dive into MVVM Architecture with .NET MAUI

Поделиться
HTML-код
  • Опубликовано: 31 дек 2024

Комментарии • 103

  • @CodingDroplets
    @CodingDroplets  Год назад +1

    ⭐ Join Us on Patreon: www.patreon.com/CodingDroplets
    .NET MAUI Tutorial Series:
    ruclips.net/video/O3-jFuXqASE/видео.html

  • @tide_pods_707
    @tide_pods_707 Год назад +14

    best explanation of MVVM ive ever seen. Thank you.

    • @CodingDroplets
      @CodingDroplets  Год назад +2

      Thank you so much for your kind comment! I'm glad to hear that you found the explanation of the MVVM pattern helpful.

  • @zakirdev
    @zakirdev Год назад +4

    Very soon you gonna be Microsoft MVP. Last 6 months I have tried many tutorials. I also completed some Udemy courses. But your teaching is better than any tutorials on Udemy and RUclips. You are the best. Thank you so much for delivering valuable tutorials for free. ❤❤

    • @CodingDroplets
      @CodingDroplets  Год назад +1

      Thank you so much for your incredibly kind words! I'm thrilled to hear that you find the tutorials helpful, and I genuinely appreciate your support and encouragement. Your feedback inspires me to continue creating valuable content. Thank you for being a part of this community, and I'm honored to have you as a viewer! ❤️❤️

    • @SmokeSerpant
      @SmokeSerpant 7 месяцев назад

      amen

  • @macupie
    @macupie Год назад +5

    That's my first video from you and well, I did not have expected to have such a harmonic synergy between explanation and video editing! This really is a game changer! And.. oh yeah, thx for the information btw :D

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you for watching our video and for your positive feedback! We're delighted that you found the content engaging.

  • @saymontonloback6396
    @saymontonloback6396 15 дней назад +1

    This is exactly what i was looking for. Thanks a lot!

    • @CodingDroplets
      @CodingDroplets  12 дней назад

      You are Welcome! I’m glad you found it helpful! 😊

  • @teriyakov
    @teriyakov 10 месяцев назад +3

    New fan here. Brilliant video and very clear and concise explanations. Thank you!

    • @CodingDroplets
      @CodingDroplets  10 месяцев назад +1

      Thank you so much for your kind words! I'm thrilled to have you as a new fan, and I'm delighted to hear that you found the MAUI MVVM tutorial helpful.

  • @morsheddld
    @morsheddld 5 месяцев назад +2

    truly this tutor is genius ❤. This is my first video watching in your channel so liked it n subscribed and become a fan of u, u r a star . expect more content from you. may god bless you.

    • @CodingDroplets
      @CodingDroplets  5 месяцев назад +1

      Thank you so much for your kind words! Happy to hear that you found it helpful. Welcome to the channel, There's plenty more content on the way, so stay tuned! May God bless you too. 😊

    • @morsheddld
      @morsheddld 5 месяцев назад +1

      @@CodingDroplets sure my dear, I'm going to watch all of your tutorials. It's really very useful.

    • @CodingDroplets
      @CodingDroplets  5 месяцев назад

      Thank you so much!

  • @ApurvKumar-u4m
    @ApurvKumar-u4m Год назад +3

    You are a good teacher keep it up ;)
    For a second I thought you weren't going to use a command and then boom my ocd fixed haha :p good job.

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you so much for your kind words and positive feedback.
      Your feedback and support inspire me to keep improving and creating valuable contents.

    • @ApurvKumar-u4m
      @ApurvKumar-u4m Год назад +1

      @@CodingDroplets I hope you stay like this interactive with people even when you become famous dont forget us ehh :)

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you so much for your heartwarming comment! I truly appreciate your kind words and support.
      Interacting with my viewers and building a strong community is essential to me, and I promise that I'll always strive to stay engaged and responsive, no matter how big my channel grows.
      My viewers, like you, are the reason I create content, and your feedback and input are invaluable in shaping the direction of my channel. Your learning and success in your coding journey are my top priorities.
      As I continue to grow, I'll always remember the support and encouragement I've received from viewers like you. I'm committed to maintaining this positive and interactive environment and creating content that's helpful and informative.
      If you ever have any questions, suggestions, or topics you'd like me to cover in my future videos, please don't hesitate to let me know. Your involvement is what makes our community special.

  • @camilofernandez8765
    @camilofernandez8765 10 месяцев назад +1

    Nuevo suscriptor :
    Gracias por enseñar me alegra que haya gente como usted.

    • @CodingDroplets
      @CodingDroplets  10 месяцев назад

      ¡Bienvenido, y muchas gracias por suscribirte! Me alegra mucho que hayas encontrado útil el tutorial. Siempre es un placer ayudar y compartir conocimientos con personas interesadas como tú.

  • @talkathiriify
    @talkathiriify 10 месяцев назад +1

    Explanation is more than wonderful.
    Thank you so much.

    • @CodingDroplets
      @CodingDroplets  10 месяцев назад

      Thank you for your kind words! I'm glad you found the explanation helpful.

  • @kopilkaiser8991
    @kopilkaiser8991 Год назад +1

    Best explanation for this subject. I was able to understood all your explanations.

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you so much for your kind words! I'm delighted to hear that the explanation was helpful and easy to understand.

  • @rohithkumar-bt2jv
    @rohithkumar-bt2jv Год назад +1

    Observable property really made my work easy.

    • @CodingDroplets
      @CodingDroplets  Год назад

      I'm glad to hear that using observable properties made your work easier! They are indeed a powerful feature in MVVM.

  • @ihsankocak4343
    @ihsankocak4343 2 месяца назад +1

    Your explanation is perfect. Thank you..

    • @CodingDroplets
      @CodingDroplets  2 месяца назад

      You are most welcome! Glad to hear that.

  • @RDGTECH7
    @RDGTECH7 Год назад +1

    Thanks you bro for make this video , this helpme alot for my tesis , im building an medical appoiment i this is so helpfull cause im new on maui and mvvm , ty for make my journey better

    • @CodingDroplets
      @CodingDroplets  Год назад

      You're very welcome! I'm thrilled to hear that the tutorial has been helpful for your medical appointment app and your thesis. It's great that you found the content beneficial as you navigate through MAUI and MVVM.

  • @swamysivakumarYalamati
    @swamysivakumarYalamati 5 месяцев назад +1

    that was an awesome video. you are a monster in this tech

    • @CodingDroplets
      @CodingDroplets  5 месяцев назад

      Thank you so much for your kind words! Glad to know that you liked the video.

  • @Ramasanda
    @Ramasanda 9 месяцев назад +1

    Thank you for your amazing tutorials. please add a new video about best ways for binding data in mvvm structure. Considering dependency and professionalism.

    • @CodingDroplets
      @CodingDroplets  9 месяцев назад

      Thank you for your feedback and for watching the tutorials! I'm glad you find them helpful. Your suggestion for a video on the best practices for data binding in the MVVM structure is excellent, and I'll definitely consider creating one.

  • @blauornuo7060
    @blauornuo7060 2 месяца назад +1

    Thanks for showing. Be safe and right

    • @CodingDroplets
      @CodingDroplets  2 месяца назад

      You're very welcome! 😊 Thank you for the kind words. Stay safe and happy coding!

  • @johnmaguire2185
    @johnmaguire2185 Год назад +1

    Really like the way you make the videos.

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you so much for your positive feedback! Glad to hear that.

  • @SuchithM
    @SuchithM Год назад +3

    I think here deviated with MVVM pattern. Listview_ItemTapped used in the code behind instead of view model, is it not the deviation from MVVM pattern ?

    • @CodingDroplets
      @CodingDroplets  Год назад +4

      Thank you for your comment and bringing up an important point about the MVVM pattern.
      In MVVM, it's generally recommended to handle events and user interactions in the view model instead of the code-behind. This helps to maintain a separation of concerns and keep the view model responsible for the business logic.
      However, it's worth mentioning that the MVVM pattern is flexible, and there can be scenarios where handling events in the code-behind might be appropriate, especially for simpler scenarios or quick prototyping. In that part of the tutorial, the focus might have been more on demonstrating the ListView Tapped functionality.
      That being said, it's a good practice to strive for a more pure MVVM implementation by handling events and user interactions in the view model. This promotes better code organization and testability.
      Thank you for bringing this up, and I appreciate your attention to detail. If you have any further questions or need clarification, feel free to ask. Happy coding!

  • @enricoroselino7557
    @enricoroselino7557 6 месяцев назад +2

    so you put vm:viewmodel in xaml and also put it on DataContext on code behind

    • @CodingDroplets
      @CodingDroplets  6 месяцев назад +1

      In the tutorial, I assign the ViewModel to the BindingContext in the code-behind. This ensures that the ViewModel is correctly bound to the view, allowing for proper data binding and interaction. Thanks for watching!

  • @arvindchourasiya4738
    @arvindchourasiya4738 Год назад +2

    Great video. So much information. I was looking for a part where to attach view to viewmodel instead you created binding context in code behind. This is not pure mvvm. Thank you

    • @CodingDroplets
      @CodingDroplets  Год назад +1

      Thank you for watching and sharing your feedback with us! We're glad to hear that you found the video informative.
      In an upcoming tutorial, we'll dive into the concept of dependency injection and discuss how it can be used to attach the view model to the view in a more loosely coupled manner.

  • @plaaggeest64
    @plaaggeest64 Год назад +1

    I love you my friend you saved me!

    • @CodingDroplets
      @CodingDroplets  Год назад

      I'm glad to hear that the tutorial was helpful for you! Thank You so much

  • @woolwizard2469
    @woolwizard2469 26 дней назад +1

    i just tried to do the same thing in my App but it just doesn't work for me. In the ListView there will only ever be the datatype of the class i want as ItemsSource displayed as a string because the ItemsSource Property will call the ToString Method on everything, it doesn't know what to do with and it seems, it doesn't know what to do with my class... the only real difference in my app is, that i set the properties of the Employee in the Command function manually for testing purposes. But this should have noe effect on the outcome in my opinion. I even tried to simulate changing the property with an Entry Control but it doesn't change anything. The only time my ListView will show correct data is when using an ObservableCollection instead of a collection of a custom class... i just can't figure out what to do and i rewatched the last part of the video like 15 times already and compared it to my implementation

    • @woolwizard2469
      @woolwizard2469 26 дней назад +1

      ok i managed to fix it by using a ViewCell inside the DataTemplate instead of putting Data directly inside the DataTemplate. I guess some magic behind the scenes happen, which enable the displaying of simple data types like string and numbers without ViewCells but when trying to show images inside a listview and binding the Source Property to something of the DatatTemplate DataType it doesn't work that easily. Phew, that took hours to find out

    • @CodingDroplets
      @CodingDroplets  21 день назад

      Thank you for sharing your experience, and I’m glad you were able to solve the issue! 😊 You’re absolutely right, when using custom data types in a ListView, a ViewCell inside the DataTemplate is necessary to define how the data should be displayed. Without a ViewCell, ListView relies on the ToString() method for rendering, which is why you were seeing the class name as a string.

  • @9to5Abroad
    @9to5Abroad 11 месяцев назад +2

    Great instructions, thanks!

  • @avijitnandi5879
    @avijitnandi5879 Год назад +1

    Really great video I learnt and cleared my basics. I request you to make video on the validations of the employee user input. Thanks.

    • @CodingDroplets
      @CodingDroplets  Год назад +1

      Thank you for your positive feedback! I'm glad to hear that you found the tutorial helpful and that it cleared your basics.
      Regarding your request for a video on validating employee user input, that's a great suggestion! Validations are an important aspect of application development, and I'll definitely consider creating a video specifically focused on implementing input validations in the context of employee data.

    • @avijitnandi5879
      @avijitnandi5879 Год назад +1

      @@CodingDroplets Thank you Sir

  • @brooklynsaia409
    @brooklynsaia409 Год назад

    I’m getting a lot of errors and unexpected using statements that aren’t in the video are required to bind.. could you lend some insight as to why I would be getting an error when I’m trying to populate 11:14

    • @CodingDroplets
      @CodingDroplets  Год назад

      I'm sorry to hear you're encountering errors. You can find the source code for the tutorial at this GitHub repository: github.com/codingdroplets/MauiMvvmDemo.
      I recommend cloning the repository and comparing your code to the one provided in the tutorial to identify any differences or missing components that might be causing the errors.

  • @TheMtahir786
    @TheMtahir786 Год назад +1

    DO I need to use this model even when I using a database?
    please help

    • @CodingDroplets
      @CodingDroplets  Год назад

      Absolutely, using the MVVM (Model-View-ViewModel) pattern and data binding is still beneficial when working with a database in MAUI. It helps maintain separation of concerns and makes your code more maintainable, even when dealing with data retrieval and storage operations from a database. MVVM can help organize your app's logic and user interface effectively.

  • @曼巴-z1t
    @曼巴-z1t 8 месяцев назад +1

    Can you provide a complete case of data addition, deletion, modification, and search, teacher?

    • @CodingDroplets
      @CodingDroplets  8 месяцев назад +1

      Thank you for your comment! I appreciate your interest in seeing a complete case example. While the tutorial focused on the basics of MVVM architecture, I'll definitely consider creating more detailed tutorials that cover these specific operations in the future.

  • @OrcanTech
    @OrcanTech Год назад +1

    great video. easy to follow. thanks.

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you so much for your kind words! I'm glad to hear that you found the video great and easy to follow.

  • @oktjona
    @oktjona Год назад +1

    Great video thnkx simplified

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you for your feedback! I'm glad you found the video helpful and simplified.

  • @stscomputerchaibasa1928
    @stscomputerchaibasa1928 Год назад +1

    well done , i request you to make a tutorial on crud with sqlite3 also.

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you for your kind words and the suggestion! We appreciate your feedback. The idea of creating a tutorial on CRUD operations with SQLite3 in the context of .NET MAUI is a valuable one. We'll certainly consider your request for future content.

  • @ApurvKumar-u4m
    @ApurvKumar-u4m Год назад +1

    can I request a tutorial ?
    Sometimes you have two viewmodels and you want to pass a value from 1 viewmodel to another one how would you do that?
    I have never seen a tutorial about it.
    In the last bits of this video you were doing something similar but then you were navigating to that page so it wasn't a problem. like : 25:58 where you had empoyeedetailviewmodel and where passing a value.

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you for watching and for your tutorial request! We appreciate your engagement and the interesting topic you've brought up.
      To clarify your request, when you mention showing the second view without navigation, are you referring to scenarios where you need to communicate data between two view models within the same page? Or do you have another specific scenario in mind where navigation is not desired?
      Understanding the context of your request will help us create a tutorial that best addresses your needs and provides the most relevant solutions.

    • @ApurvKumar-u4m
      @ApurvKumar-u4m Год назад +1

      @@CodingDroplets ok so when you have a view A with a viewmodel A and then a view B with a ViewModel B
      Thanks

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you for providing further clarification! There are several approaches you can take. Here are a couple of common solutions.
      Using Dependency Injection: You can inject ViewModel A into ViewModel B (or vice versa). This way, both ViewModels can share data directly.
      Event Aggregator Pattern: ViewModels can communicate through an event bus that acts as a mediator. ViewModel A publishes an event containing the data, and ViewModel B subscribes to that event and receives the data when it's raised.
      In our upcoming videos in this series, we'll be discussing in detail about both these options. Stay tuned for the upcoming tutorial, and happy coding!

  • @SohailYoutubePremium
    @SohailYoutubePremium Год назад +1

    Awesome video

  • @lcppb
    @lcppb Год назад +1

    If possible, do a search for a typed text and show the result... and then click on this result and open its details on another screen...MVVM. Thank you

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you for your suggestion! Performing a search for typed text and demonstrating the display of search results along with the ability to view details on another screen is an excellent idea to explore the MVVM pattern.
      I'll definitely consider creating a tutorial that covers this scenario, as it's a common and valuable use case.

  • @hungchip
    @hungchip 11 месяцев назад +1

    Hi Master, can you make a Video MVVM work with EF Core 8.0.2? that will is perfect!

    • @CodingDroplets
      @CodingDroplets  11 месяцев назад

      Thank you for your suggestion! I appreciate your interest. It's a valuable topic, and I'll definitely consider creating a tutorial on that.

  • @johnmaguire2185
    @johnmaguire2185 Год назад +1

    I wonder if you could demonstrate a simple store for the employee data to have it persist.

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you for your comment! I appreciate your interest in a demonstration of persisting employee data in a simple store. I'm planning to cover topics like data persistence and storage in an upcoming video.

  • @swamysivakumarYalamati
    @swamysivakumarYalamati 5 месяцев назад +1

    more videos on community toolkit maui.

    • @CodingDroplets
      @CodingDroplets  5 месяцев назад

      Thanks for the suggestion! We'll be doing more videos on the Community Toolkit for MAUI soon. Stay tuned!

  • @hananehanane4881
    @hananehanane4881 Год назад +1

    You don't share the code 😢

    • @CodingDroplets
      @CodingDroplets  Год назад

      I appreciate your interest! The source code for the .NET MAUI MVVM tutorial is available on GitHub. You can find it at the following repository:
      github.com/codingdroplets/MauiMvvmDemo

    • @hananehanane4881
      @hananehanane4881 Год назад +1

      thank you @@CodingDroplets🙂

    • @CodingDroplets
      @CodingDroplets  Год назад

      You are very welcome!

    • @hananehanane4881
      @hananehanane4881 Год назад

      how can i select or click on label on collectionview please ?@@CodingDroplets

    • @CodingDroplets
      @CodingDroplets  Год назад

      Are you using Frame inside CollectionView item?

  • @AsifHussain2847
    @AsifHussain2847 10 месяцев назад +1

    how to get source code

    • @CodingDroplets
      @CodingDroplets  10 месяцев назад +1

      github.com/codingdroplets/MauiMvvmDemo

  • @ЮліяМисюкевич-щ6с
    @ЮліяМисюкевич-щ6с 2 месяца назад +1

    this ain't mvvm lol

    • @CodingDroplets
      @CodingDroplets  2 месяца назад

      The video demonstrates how to implement the MVVM pattern using the CommunityToolkit.Mvvm library in .NET MAUI, focusing on data bindings, ViewModels, and updating the UI dynamically. If there's something specific you think could be improved or if you have suggestions on how to make it more MVVM-compliant, I'd love to hear your thoughts!

  • @DerykRobosson
    @DerykRobosson Год назад +2

    There was nothing "deep" about that "dive".

    • @CodingDroplets
      @CodingDroplets  Год назад

      Thank you for sharing your feedback!

    • @mohsenmosahebifrad8939
      @mohsenmosahebifrad8939 10 месяцев назад +3

      That's not true. This video is short because tutor did not wasting time by slow typing, correcting errors and obssession with naming convetions. He prepared everything beforhand and cut useless section from his videos.