using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace CustomOpenAddins.Models { /// /// 细类 /// public class DetailItem : BaseItem { public DetailItem(string name, SubItem subItem) : base(name) { SubItem = subItem; MeasureTypes = new HashSet(); } public Measurement this[int index] { get => MeasureTypes.ElementAt(index); } /// /// 细类,父级 /// public SubItem SubItem { get; set; } public override string ToString() { StringBuilder sb = new StringBuilder($"{nameof(DetailItem)}:{Name};"); if (MeasureTypes.Count == 0) { return sb.Append("无;").ToString(); } foreach (var item in MeasureTypes) { sb.AppendLine($"{item}"); } return sb.ToString(); } public HashSet MeasureTypes { get; private set; } public Measurement AddMeature(MeasurementUnit unit) { Measurement measure = new Measurement(unit, this); if (MeasureTypes == null) { MeasureTypes = new HashSet(); } MeasureTypes.Add(measure); return measure; } } }