コード例 #1
0
        async void OnFarmerClicked(object sender, EventArgs e)
        {
            AddressFarmerModel address = GetViewModel.FarmerAddress;
            await Navigation.PushAsync(new FarmerPage(GetViewModel.Farmer, address));

            //GetViewModel.FarmerList.Clear();
        }
コード例 #2
0
        public Task <int> UpdateItemAsync(AddressFarmerModel item)
        {
            string strSql = string.Format("update AddressFarmerModel set Address='{1}',CountryID={3},CityID={4} where FarmerGuid = '{0}' or AddressFarmerID = {2} ",
                                          item.FarmerGuid, item.Address, item.AddressFarmerID, item.CountryID, item.CityID);

            return(database.ExecuteAsync(strSql));
        }
コード例 #3
0
        public TemplateFieldListView(FarmerModel farmer = null, AddressFarmerModel address = null)
        {
            InitializeComponent();

            GetViewModel.SelectedFarmer  = farmer;
            GetViewModel.SelectedAddress = address;
        }
コード例 #4
0
        public FarmerAbstractPage(FarmerModel farmer, AddressFarmerModel address)
        {
            InitializeComponent();

            GetViewModel.Farmer        = farmer;
            GetViewModel.FarmerAddress = address;
            GetViewModel.Navigation    = Navigation;
        }
コード例 #5
0
        public FieldPage(FarmerModel farmer, AddressFarmerModel address)
        {
            InitializeComponent();

            GetViewModel.Farmer     = farmer;
            GetViewModel.FarmerGuid = farmer.GuidId;
            GetViewModel.address    = address;

            GetViewModel.Navigation = Navigation;
            GetViewModel.ButtonName = "Done";
        }
コード例 #6
0
        //protected override bool OnBackButtonPressed()
        //{
        //    FarmerModel farmer = GetViewModel.farmerModel;
        //    AddressFarmerModel address = GetViewModel.addressModel;
        //    Navigation.PushAsync(new FarmerAbstractPage(farmer, address));
        //    return false;
        //}

        protected override void OnDisappearing()
        {
            FarmerModel        farmer  = GetViewModel.farmerModel;
            AddressFarmerModel address = GetViewModel.addressModel;

            if (farmer != null && farmer.FarmerId > 0)
            {
                FarmerAbstractPage a = (FarmerAbstractPage)Navigation.NavigationStack.Where(k => k.Title == "FarmerDetail").FirstOrDefault();
                a.GetViewModel.Farmer        = farmer;
                a.GetViewModel.FarmerAddress = address;
            }
        }
コード例 #7
0
        protected override void OnDisappearing()
        {
            // If you want to continue going back
            FarmerModel        selectedFarmer = GetViewModel.Farmer;
            AddressFarmerModel address        = GetViewModel.address;

            FarmerAbstractPage a = (FarmerAbstractPage)Navigation.NavigationStack.Where(k => k.Title == "FarmerDetail").FirstOrDefault();

            a.GetViewModel.Farmer        = selectedFarmer;
            a.GetViewModel.FarmerAddress = address;


            //// If you want to stop the back button
            //return true;
        }
コード例 #8
0
        async void UpdateCountryCity(int farmerid, AddressFarmerModel address)
        {
            if (farmerid > 0)
            {
                CountryPicker.SelectedIndexChanged -= Country_SelectedIndexChanged;
                GetViewModel.Address         = string.IsNullOrEmpty(address.Address) ? string.Empty : address.Address;
                GetViewModel.SelectedCountry = GetViewModel.CountryList.Where(k => k.CountryID == address.CountryID).FirstOrDefault();
                GetViewModel.RawCityList     = await App.CountryCityTable.GetCityList(address.CountryID);

                //await Task.Delay(TimeSpan.FromMilliseconds(400));
                GetViewModel.SelectedCity           = GetViewModel.CityList.Where(k => k.City_ID == address.CityID).FirstOrDefault();
                GetViewModel.IsCountry              = true;
                CountryPicker.SelectedIndexChanged += Country_SelectedIndexChanged;
            }
        }
コード例 #9
0
        async void FarmerSelected(object sender, SelectedItemChangedEventArgs args)
        {
            var item = args.SelectedItem as FarmerModel;

            if (item == null)
            {
                return;
            }

            AddressFarmerModel address = await GetViewModel.GetAddressFarmerModel(item.FarmerId, item.GuidId);

            //Detail Page is not ready to show
            await Navigation.PushAsync(new FarmerAbstractPage(item, address));

            //GetViewModel.FarmerList.Clear();
            FarmerlistView.SelectedItem = null;
        }
コード例 #10
0
        public static void OnEventFired(BindableObject obj, object old, object newitem)
        {
            string             item    = (obj as FieldListView).ContentExist;
            View               content = (obj as FieldListView).Content;
            FarmerModel        a       = (obj as FieldListView).SelectedFarmer;
            AddressFarmerModel b       = (obj as FieldListView).SelectedFarmerAddress;

            if (item == "MapView")
            {
                //https://forums.xamarin.com/discussion/87415/how-to-display-content-from-one-xaml-inside-another
                (obj as FieldListView).FindByName <ContentView>("farmerDetailView").Content = new MapView();
            }
            else if (item == "FieldList")
            {
                (obj as FieldListView).FindByName <ContentView>("farmerDetailView").Content = new TemplateFieldListView(a, b);
            }
        }
コード例 #11
0
        public async Task <AddressFarmerModel> GetAddressFarmerModel(int farmerID, string FarmerGuid)
        {
            if (farmerID == 0)
            {
                farmerID = -1;
            }

            Guid tmp = Guid.Empty;

            if (!string.IsNullOrEmpty(FarmerGuid))
            {
                tmp = new Guid(FarmerGuid);
            }

            AddressFarmerModel selectedFarmerAddress = await App.AddressFarmerTable.GetItemAsync(farmerID, tmp);

            return(selectedFarmerAddress);
        }
コード例 #12
0
        public FarmerPage(FarmerModel farmer = null, AddressFarmerModel address = null)
        {
            InitializeComponent();
            GetViewModel.farmerModel   = farmer;
            GetViewModel.addressModel  = address;
            GetViewModel.BtnName       = farmer.FarmerId > 0 ? "Update" : "Save";
            GetViewModel.OperationType = farmer.FarmerId > 0 ? true : false;
            GetViewModel.FarmerID      = farmer.FarmerId;
            GetViewModel.FirstName     = farmer.FirstName;
            GetViewModel.LastName      = farmer.LastName;
            GetViewModel.GuidId        = farmer.GuidId;
            GetViewModel.Email         = farmer.Email;
            GetViewModel.Phone         = farmer.Phone;

            GetViewModel.RowHash = farmer.RowHash;

            GetViewModel.GetCountryList();
            if (address != null)
            {
                UpdateCountryCity(farmer.FarmerId, address);
            }

            string format = "yyyy-MM-dd'T'hh:mm:ss";

            //string format = string.Empty;
            //if (Device.RuntimePlatform == Device.Android)
            //    format = "M/d/yyyy hh:mm:ss tt";
            //else
            //    format = "M/d/yyyy hh:mm:ss";



            GetViewModel.BirthDate = string.IsNullOrEmpty(farmer.BirthDate) ? DateTime.Now :
                                     DateTime.ParseExact(farmer.BirthDate, format, CultureInfo.InvariantCulture);
            GetViewModel.Navigation = Navigation;
            GetViewModel.IsCountry  = false;
        }
コード例 #13
0
        public FieldPage(FieldModel item, FarmerModel farmer, AddressFarmerModel address)
        {
            InitializeComponent();

            GetViewModel.Farmer         = farmer;
            GetViewModel.FarmerGuid     = farmer.GuidId;
            GetViewModel.address        = address;
            GetViewModel.Navigation     = Navigation;
            GetViewModel.ButtonName     = "Update";
            GetViewModel.FieldID        = item.FieldId;
            GetViewModel.FieldGuid      = item.FieldGuid;
            GetViewModel.FieldName      = item.FieldName;
            GetViewModel.GpsPosition    = item.FieldGps;
            GetViewModel.SampleAreaSize = item.FieldAreaSize.ToString();
            Array abc = Enum.GetValues(typeof(FieldViewModel.SampleAreaSizeUnit));

            foreach (FieldViewModel.SampleAreaSizeUnit i in abc)
            {
                if (i.ToString() == item.FieldUnit)
                {
                    GetViewModel.AreaUnit = i;
                }
            }
        }
コード例 #14
0
 public Task <int> DeleteItemAsync(AddressFarmerModel item)
 {
     return(database.DeleteAsync(item));
 }
コード例 #15
0
 public Task <int> SaveItemAsync(AddressFarmerModel item)
 {
     return(database.InsertAsync(item));
 }