public void AddRule(Rule rule) { Rules.Add(rule); var tmp = new List<string>(); foreach (var r in Rules) { tmp.Add(r.Formulra); tmp.Add(r.Type); } tmp.Sort(); RuleList = string.Join(",", tmp); }
/// <summary> /// 条件付き書式の定義一覧からオブジェクト化する /// </summary> /// <param name="data">XMLデータ</param> /// <returns>オブジェクト化した条件付き書式の定義一覧</returns> private static List<ConditionFormat> GetConditionFormatLsit(string data) { var conditionFormatLsit = new List<ConditionFormat>(); var conditionFormatSelects = Regex.Matches(data, ConditionDefine); for (var i = 0; i < conditionFormatSelects.Count; i++) { var result = new ConditionFormat { FullText = conditionFormatSelects[i].Value, Sqref = conditionFormatSelects[i].Groups[1].Value }; var conditionFormatRules = Regex.Matches(conditionFormatSelects[i].Value, RuleDefine); for (var j = 0; j < conditionFormatRules.Count; j++) { var conditionFormatRule = new Rule { Type = conditionFormatRules[j].Groups[1].Value, DxfId = conditionFormatRules[j].Groups[3].Value, Formulra = conditionFormatRules[j].Groups[5].Value }; result.AddRule(conditionFormatRule); } conditionFormatLsit.Add(result); } return conditionFormatLsit; }