protected override void OnCreate(Bundle bundle)
 {
     try
     {
         base.OnCreate(bundle);
         SetContentView(Resource.Layout.Subscriptions);
         var userHomeViewModel = Intent.GetStringExtra("userhomeviewmodel");
         userViewModel = JsonConvert.DeserializeObject<UserHomeViewModel>(userHomeViewModel);
         var userLoginContextStore = LocalStoreManager.SQliteConnection.Table<KeyValueModel>().Where(k => k.Key == "userlogincontext").FirstOrDefault();
         if (userLoginContextStore != null)
         {
             var userLoginContextObj = JsonConvert.DeserializeObject<UserLoginContext>(userLoginContextStore.Value);
             FindViewById<TextView>(Resource.Id.txtloginas).Text = string.Format("Welcome {0}", userLoginContextObj.Username);
         }
         var gridView = FindViewById<GridView>(Resource.Id.gvCtrl);
         gridView.ItemClick += gridView_ItemClick;
         gridView.Adapter = new GridViewAdapter(this, userViewModel);
     }
     catch (Exception ex)
     {
         ExceptionHandler.HandleException(ex, this);
     }
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="vm"></param>
 public void RenderView(UserHomeViewModel vm)
 {
     try
     {
         var intent = new Intent(this, typeof(Subscriptions));
         var userhomeViewModel = JsonConvert.SerializeObject(vm);
         intent.PutExtra("userhomeviewmodel", userhomeViewModel);
         StartActivity(intent);
     }
     catch (Exception ex)
     {
         ExceptionHandler.HandleException(ex, this);
     }
 }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="usageDetails"></param>
 private void BindEvents(UserHomeViewModel usageDetails)
 {
     var btnOne = this.FindViewById<Button>(Resource.Id.buttonTwo);
     btnOne.Click += (object sender, EventArgs e) =>
     {
         var fragment = new ResourcesFragment();
         fragment.LayoutId = Resource.Layout.FrameLayoutOne;
         fragment.UserHomeViewModel = usageDetails;
         var transaction = FragmentManager.BeginTransaction();
         transaction.Replace(Resource.Id.framecontent, fragment).Commit();
     };
     var btnDefault = this.FindViewById<Button>(Resource.Id.buttonDefault);
     btnDefault.Click += (object sender, EventArgs e) =>
     {
         BindDefault(usageDetails);
     };
     var btnThree = this.FindViewById<Button>(Resource.Id.buttonThree);
     btnThree.Click += (object sender, EventArgs e) =>
     {
         var fragment = new DailyFragment();
         fragment.LayoutId = Resource.Layout.FrameLayoutThree;
         fragment.UserHomeViewModel = usageDetails;
         FragmentManager.BeginTransaction().Replace(Resource.Id.framecontent, fragment).Commit();
     };
 }
 public GridViewAdapter(Activity activity, UserHomeViewModel userHomeViewModel)
 {
     _activity = activity;
     _usageHomeViewModel = userHomeViewModel;
 }
 private void BindDefault(UserHomeViewModel userHomeViewModel)
 {
     try
     {
         var fragmentDefault = new SubscriptionDetailsFragment();
         fragmentDefault.LayoutId = Resource.Layout.FrameLayoutDefault;
         fragmentDefault.UserHomeViewModel = userHomeViewModel;
         FragmentManager.BeginTransaction().Add(Resource.Id.framecontent, fragmentDefault).Commit();
     }
     catch (Exception ex)
     {
         ExceptionHandler.HandleException(ex, this);
     }
 }