public void BindSurgeonPopupover(List<SurgeonDetails> listOfSurgeons,UILabel lblField,int FrameY)
		{
			int uvwidth;
			ATlist.Clear();
			List<CodePickerModel> alist = SetSurgeonDataSource(listOfSurgeons, out  uvwidth);
			SurgeonDetails sd = listOfSurgeons.Find (u => u.ID == SurgeonID);
			CodePickerModel selecteditem = new CodePickerModel ();
			if (sd != null) {				
				selecteditem.ItemID = sd.ID;
				selecteditem.ItemText = sd.Name;
			}
			// SurgeonID
			uvwidth=500;
			qmcp = new qmCodePicker(this,uvwidth,alist);
			qmcp.Issearchactive = true;
			qmcp.TypeOfList = "Surgeons";
			qmcp.AllowsMultipleSelection = false;
			qmcp.SelectedItems.Add (selecteditem);
			float x = 100;
			float y = (float)lblField.Frame.Y+FrameY  ;

			qmcp.PresentFromPopover(lblField, x, y,uvwidth);
			//qmcp.mDataSource(alist);
			qmcp._ValueChanged += async delegate
			{
				if(qmcp.SelectedItems.Count > 0){
					ATlist = qmcp.SelectedItems;
					lblField.Text =  " " + ATlist[0].ItemText;
					SurgeonID=ATlist[0].ItemID;
					ProcedureSurgeonDetails procSurgeon = new ProcedureSurgeonDetails();
					procSurgeon.Name = lblField.Text;
					procSurgeon.SurgeonID = ATlist[0].ItemID;
					procSurgeon.ProcID = procedureDetails.ID;
					if(selectedSurgeon.Count >0)
						procSurgeon.ProcSurgeonID = selectedSurgeon[0].ProcSurgeonID;
					else
						procSurgeon.ProcSurgeonID = 0;
					AddUpdateProcedureSurgeon(procSurgeon);
					ATlist.Clear();


				}
			};
		}
		public async void AddUpdateProcedureSurgeon(ProcedureSurgeonDetails procSurgeon)
		{
			ReceiveContext context=	await AppDelegate.Current.pqrsMgr.AddUpdateProcedureSurgeon(procSurgeon);
			if (context != null && context.status != null && context.status.ToUpper () == "OK") {
				UpdateProcedureStatus ();
				if(selectedSurgeon.Count > 0)
					selectedSurgeon.RemoveAt (0);
				
				selectedSurgeon.Add(procSurgeon);
				Console.WriteLine ("Surgeon: "+procSurgeon.Name + " saved successfully to procedure: "+ procSurgeon.ProcID.ToString() );
			} else {
				Console.WriteLine ("Surgeon: "+procSurgeon.Name + " failed to assign to procedure: "+ procSurgeon.ProcID.ToString() );			
			}
		}
		public void BindSurgeonPopupover(List<SurgeonDetails> listOfSurgeons,UILabel lblField,int FrameY)
		{
			int uvwidth;
			ATlist.Clear();
			List<CodePickerModel> alist = SetSurgeonDataSource(listOfSurgeons, out  uvwidth);
			mcp = new mCodePicker(this,uvwidth);
			mcp.TypeOfList = "Surgeons";

			float x = (float)lblField.Frame.X;
			float y = (float)lblField.Frame.Y + FrameY;

			mcp.PresentFromPopover(lblField, x, y,uvwidth);
			mcp.mDataSource(alist);
			mcp._ValueChanged += async delegate
			{
				if(mcp.SelectedItems.Count > 0){
					ATlist = mcp.SelectedItems;
					lblField.Text =  " " + ATlist[0].ItemText;

					ProcedureSurgeonDetails procSurgeon = new ProcedureSurgeonDetails();
					procSurgeon.Name = lblField.Text;
					procSurgeon.SurgeonID = ATlist[0].ItemID;
					procSurgeon.ProcID = procedureDetails.ID;
					if(selectedSurgeon.Count >0)
						procSurgeon.ProcSurgeonID = selectedSurgeon[0].ProcSurgeonID;
					else
						procSurgeon.ProcSurgeonID = 0;
					AddUpdateProcedureSurgeon(procSurgeon);
					ATlist.Clear();
				}
			};
		}