public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { if (AppUtil.IsInDesignMode) { return("0"); } try { NatureRequirement natureRequirement = values[0] as NatureRequirement; if (natureRequirement == null) { return("nature_nil"); } int grade = 1; int.TryParse(values[1].ToString(), out grade); if (grade < 0) { return("grade<0"); } else if (grade == 0) { return("0"); } EAddition addType = (EAddition)values[2]; int sum = 0; for (int i = 1; i <= grade; i++) { int index = i - 1; if (index >= natureRequirement.Count) { break; } NatureList natureList = natureRequirement[index]; foreach (NatureEnumWrap wrap in natureList) { NatureEntry entry = ModelManager.Instance.NatureXlsData[wrap.Value]; Addition add = entry.Additions[addType]; sum += add.Value; } } return(sum.ToString()); } catch (Exception e) { LogManager.Instance.Error(e.Message); LogManager.Instance.Error(e.Source); LogManager.Instance.Error(e.StackTrace); return("100"); } }
private void onBtn_DeleteGrade(object sender, RoutedEventArgs e) { NatureList natureList = dgGrade.SelectedItem as NatureList; if (natureList == null) { return; } NatureRequirement x = dgGrade.ItemsSource as NatureRequirement; x.Remove(natureList); }
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { if (value == null || String.IsNullOrEmpty(value.ToString())) { return(new NatureRequirement()); } string gradeConditionStr = value.ToString(); NatureRequirement gradeData = NatureRequirement.CreateFromJson(gradeConditionStr); return(gradeData); }
public static NatureRequirement CreateFromJson(string jsonStr) { NatureRequirement require = new NatureRequirement(); JSONArray jsonAry = JSONNode.Parse(jsonStr).AsArray; foreach (JSONArray ary in jsonAry.Childs) { NatureList grade = new NatureList(); for (int i = 0; i < ary.Childs.Count(); i++) { grade[i].Value = (ENature)ary.Childs.ElementAt(i).AsInt; } require.Add(grade); } return(require); }
private void btnSaveGrade_Click(object sender, RoutedEventArgs e) { if (dgWarrior.SelectedItem == null) { return; } NatureRequirement natureRequire = dgGrade.ItemsSource as NatureRequirement; if (natureRequire == null) { return; } string gradeConditionStr = natureRequire.ConvertToJson(); (dgWarrior.SelectedItem as DataRowView)["GradeCondition"] = gradeConditionStr; }
public NatureRequirePreset() { Requirement = new NatureRequirement(); }