protected override void OnModelSet(VisualElement model)
        {
            base.OnModelSet(model);

            var pullToRefreshListView = (PullToRefreshListView)this.Model;
            var tableView             = (UITableView)this.Control;

            refreshControl = new FormsUIRefreshControl();
            refreshControl.RefreshCommand = pullToRefreshListView.RefreshCommand;
            refreshControl.Message        = pullToRefreshListView.Message;
            tableView.AddSubview(refreshControl);
        }
		protected override void OnElementChanged (ElementChangedEventArgs<ListView> e)
		{
			base.OnElementChanged (e);

			if (refreshControl != null)
				return;

			var pullToRefreshListView = (PullToRefreshListView)this.Element; 

			refreshControl = new FormsUIRefreshControl ();
			refreshControl.RefreshCommand = pullToRefreshListView.RefreshCommand;
			refreshControl.Message = pullToRefreshListView.Message;
			this.Control.AddSubview (refreshControl);
		}
        protected override void OnElementChanged(ElementChangedEventArgs <ListView> e)
        {
            base.OnElementChanged(e);

            if (refreshControl != null)
            {
                return;
            }

            var pullToRefreshListView = (PullToRefreshListView)this.Element;

            refreshControl = new FormsUIRefreshControl();
            refreshControl.RefreshCommand = pullToRefreshListView.RefreshCommand;
            refreshControl.Message        = pullToRefreshListView.Message;
            this.Control.AddSubview(refreshControl);
        }