Delpin Susai Raj Wednesday, 15 January 2020

Xamarin.Forms - Getting started with Prism

In this blog post, you will learn how to use Prism in existing Xamarin.Forms app.

Introduction

Xamarin.Forms code runs on multiple platforms - each of which has its own filesystem. This means that reading and writing files are most easily done using the native file APIs on each platform. Alternatively, embedded resources are a simpler solution to distribute data files with an app.

MVVM

MVVM - Model View ViewModel
MVVM Is the design pattern to separate the user interface & business logic concerns. I suppose that you heard something about it. This pattern created by Microsoft is widely used with applications created with .NET Framework but not only because you can also use it with Xamarin.

Prism
Prism is a framework for building loosely coupled, maintainable, and testable XAML applications in WPF, Windows 10 UWP, and Xamarin Forms. Prism provides an implementation of a collection of design patterns that are helpful in writing well-structured and maintainable XAML applications, including MVVM, dependency injection, commands, EventAggregator, and others.

Prism Containers
  1. Unity
  2. DryIoc
Unity is the container I use and recommend the most. Unity is the most popular container due to it being the container that Brian has used for years and it is the first (and for a long time only) container available in the Templates. Unity is also about average with regards to its benchmark performance.

DryIoc is the container It's under active development, it's very fast, and works well with the current release of Prism. Also important is that when I have had questions or issues the maintainer has been very quick to address the issue or answer the question I had. It's for all of these reasons I continue to recommend the container.

Go with Prism Unity Container

Prerequisites
  • Visual Studio 2017 or later (Windows or Mac)
Setting up a Xamarin.Forms Project

Start by creating a new Xamarin.Forms project. You wíll learn more by going through the steps yourself.

Create a new or existing Xamarin forms(.Net standard) Project. With Android and iOS Platform.

Install "Prism.Unity.Forms" Nuget

Now, add the following NuGet Packages.
  • Prism.Unity.Forms
Go to Solution Explorer and select your solution. Right-click and select "Manage NuGet Packages for Solution". Search "Prism.Unity.Forms" and add Package. Remember to install it for each project (.NET Standard, Android, iO, and UWP).

Change Application to PrismApplication

After install Prism.Unity.Prism, Change Application to PrismApplication in App.Xaml

App.xaml

Register NavigationService

Change Application to PrismApplication and add IPlatformInitializer to App Constructor.
Then register your content page and ViewModel using IContainerRegistry
  1. override OnInitialized (Initialize Components)
  2. override  RegisterTypes (Navigation Service Register)
Refer following code snippet.

App.xaml.cs

Platform Setup

Android

Need to change IPlatformInitializer in LoadApplication.

MainActivity.cs

iOS

Need to change IPlatformInitializer in LoadApplication.

AppDelegate.cs

MVVM BindingContext

You no need to set BindingContext your ViewModel to ContentPage. Just create a ContentPage name ending with Page. (Ex: MyPage). Create a ViewModel name staring with ContentPage Name (ex: MyPageViewModel).

ViewModelLocator

If Viewmodel BindingContext is not working. Follow the below step.

ContentPage.xaml.cs

ContentPage.Xaml

Click the "Play" button to try it out.

Wow, it's working. 😍

I hope you have understood how to how to use Prism in existing Xamarin.Forms app.

Thanks for reading. Please share your comments and feedback. Happy Coding :)

8 comments:

  1. .Nice blog..i was really impressed by seeing this blog, it was very interesting and it is very useful for me.also the information which you have mentioned here is correct and impressive. Really appreciate.
    Woah!! Such a piece of the nice information you have shared here, I have read the entire post and I must say that the information is very helpful for me.
    Hire Xamarin Developer
    Hire Xamarin Development Company
    Xamarin Development Company

    ReplyDelete
    Replies
    1. Xamarin Monkeys: Xamarin.Forms - Getting Started With Prism >>>>> Download Now

      >>>>> Download Full

      Xamarin Monkeys: Xamarin.Forms - Getting Started With Prism >>>>> Download LINK

      >>>>> Download Now

      Xamarin Monkeys: Xamarin.Forms - Getting Started With Prism >>>>> Download Full

      >>>>> Download LINK jV

      Delete
  2. Did you know there's a 12 word sentence you can communicate to your partner... that will trigger deep feelings of love and instinctual appeal for you buried within his chest?

    That's because deep inside these 12 words is a "secret signal" that triggers a man's instinct to love, cherish and care for you with his entire heart...

    12 Words Will Fuel A Man's Love Instinct

    This instinct is so hardwired into a man's brain that it will drive him to try better than ever before to take care of you.

    Matter-of-fact, fueling this all-powerful instinct is so binding to having the best ever relationship with your man that as soon as you send your man one of the "Secret Signals"...

    ...You will immediately notice him expose his soul and mind for you in a way he never experienced before and he'll see you as the only woman in the world who has ever truly understood him.

    ReplyDelete
  3. Thanks for sharing this informative content , Great work
    Leanpitch provides online training in Product prototyping during this lockdown period everyone can use it wisely.
    icp-cat training

    ReplyDelete
  4. Thanks for sharing this informative content , Great work
    Read this Blog to become a perfect Product Manager : Best Books for Product managers

    ReplyDelete
  5. Xamarin Monkeys: Xamarin.Forms - Getting Started With Prism >>>>> Download Now

    >>>>> Download Full

    Xamarin Monkeys: Xamarin.Forms - Getting Started With Prism >>>>> Download LINK

    >>>>> Download Now

    Xamarin Monkeys: Xamarin.Forms - Getting Started With Prism >>>>> Download Full

    >>>>> Download LINK A5

    ReplyDelete
  6. Very good. I thoroughly enjoyed it, and I even saved it so you could view the updated content on my website. This vibration test is simply used to assess the phone's vibration capabilities; for more information about phone vibration test see this article.

    ReplyDelete
  7. I appreciate you giving this important information. The webpage is quite helpful. You have given me a lot of helpful knowledge with this page. The piece that follows is about How to Fix PS5 Controller Drift. I suggest reading this article if your PS5 controller drifts. It's beneficial to resolve this problem.

    ReplyDelete