protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); ((PivotItem)bodyPiv.Items[0]).Header = "基本信息"; if (e.NavigationMode == NavigationMode.New) { _fieldId = int.Parse(NavigationContext.QueryString["fid"].ToString()); _field = _fieldDataAccessLayer.Get(_fieldId); _fieldCropList = _field.Plantings; _fieldSuveryResult.FieldPoints = GeoHelper.ParsePointsFromString(_field.Geo, ';', ','); int plantingCount = _fieldCropList.Count; esRegion.DefaultValue = _field.RegionName; _regionDataContext.GetAllRegions((regionData) => { _regionData = regionData; esRegion.DataContext = new ExpanderSelectorDataContext(_regionData.ToList<object>()); _cropDataContext.GetAllCrops((cropData) => { _cropData = cropData; for (_cropTabIndex = 0; _cropTabIndex < plantingCount; _cropTabIndex++) { int index = _cropTabIndex + 1; string headerTxt = "作物" + index; var content = new NyAppWP.Controls.FieldCropTab(_cropData, _fieldCropList[_cropTabIndex], false); bodyPiv.Items.Add(new PivotItem() { Header = headerTxt, Content = content, }); } txtFieldArea.Text = _field.Area.ToString("f2", CultureInfo.InvariantCulture); txtFieldName.Text = _field.FarmlandName; }); }); } //PhoneApplicationService.Current.State.Add("fieldSurveyResult", fsRst); //if (PhoneApplicationService.Current.State.ContainsKey("fieldSurveyResult")) //{ // Object obj; // PhoneApplicationService.Current.State.TryGetValue("fieldSurveyResult", out obj); // FieldSurveyResult fr = (FieldSurveyResult)obj; // if (fr.FieldID == _guid.ToString()) // { // var ptList = fr.FieldPoints.ToList(); // System.Text.StringBuilder sb = new System.Text.StringBuilder(); // foreach (GeoCoordinate coor in ptList) // { // sb.Append(coor.Longitude.ToString("#0.000000")).Append(",").Append(coor.Latitude.ToString("#0.000000")).Append(";"); // } // this._fieldGPSPoints = sb.ToString(); // this._area = fr.FieldArea; // } //} }
public FieldWarpper(Field field) { this.UniqueId = field.UniqueId; this.Area = field.Area; this.CreatedDate = field.CreatedDate; this.FarmlandID = field.FarmlandID; this.FarmlandName = field.FarmlandName; this.Geo = field.Geo; this.OwnerID = field.OwnerID; this.Plantings = field.Plantings; this.RegionID = field.RegionID; this.RegionName = field.RegionName; }
public FieldCreator() { InitializeComponent(); ((PivotItem)bodyPiv.Items[0]).Header = "基本信息"; _guid = new Guid(); _cropDataContext = new CropDataContext(); _regionDataContext = new RegionDataContext(); _fieldSuveryResult = new FieldSurveyResult(); _regionDataContext.GetAllRegions((data) => { _regionData = data; esRegion.DataContext = new ExpanderSelectorDataContext(_regionData.ToList<object>()); _service = new FieldService(); _fieldDataAccessLayer = new FieldDataAccessLayer(); _field = new Field(); _fieldCropList = new List<FieldCrop>(); }); App.RegionalCultureOverride = Thread.CurrentThread.CurrentCulture = new CultureInfo("zh-CN"); App.UICultureOverride = Thread.CurrentThread.CurrentUICulture = new CultureInfo("zh-CN"); }
private async void btnSave_Click(object sender, EventArgs e) { string fieldName = txtFieldName.Text.Trim(); var regionInfo = (ExpanderSelectorDataSource)esRegion.Seleted; for (int i = 1; i < bodyPiv.Items.Count; i++) { var content = ((PivotItem)bodyPiv.Items[i]).Content; if (content is FieldCropTab) { var item = (FieldCropTab)content; if (!item.IsInputValueVailed()) { return; } } } if (String.IsNullOrEmpty(fieldName) || String.IsNullOrEmpty(txtFieldArea.Text) || _fieldCropList.Count <= 0 || regionInfo == null) { MessageBox.Show("农田信息必须完整"); } else { if (_fieldSuveryResult.FieldPoints != null) { var ptList = _fieldSuveryResult.FieldPoints.ToList(); if (ptList.Count() > 0) { System.Text.StringBuilder sb = new System.Text.StringBuilder(); foreach (GeoCoordinate coor in ptList) { sb.Append(coor.Longitude.ToString("#0.000000")).Append(",").Append(coor.Latitude.ToString("#0.000000")).Append(";"); } sb.Remove(sb.Length - 1, 1); this._field.Geo = sb.ToString(); } } float area = float.Parse(txtFieldArea.Text); _field.Area = area; _field.FarmlandName = fieldName; //_field.Geo = _fieldGPSPoints; _field.CreatedDate = DateTime.Now; _field.RegionName = regionInfo.Name; _field.RegionID = int.Parse(regionInfo.ID); _field.Plantings = _fieldCropList; _field = await _service.Add(_field); if (_field.FarmlandID > 0) { if (_fieldDataAccessLayer.Add(_field)) { MessageBox.Show("添加农田成功"); NavigationService.GoBack(); } else { MessageBox.Show("添加农田失败"); } } else { MessageBox.Show("向服务端添加农田失败"); } } }