/// <summary> 私有的构造函数 </summary> private StaticCriterions() { Criterions = new StaticCriterion[] { Criterion_ThinFillShallowCut.UniqueInstance, Criterion_SteepFill.UniqueInstance, Criterion_StairExcav.UniqueInstance, Criterion_HighFillDeepCut.UniqueInstance, Criterion_FillCutIntersect.UniqueInstance, Criterion_StairExcavLong.UniqueInstance, Criterion_RoadSurface.UniqueInstance, Criterion_SoftSub.UniqueInstance, }; // 这一句必须保留,因为在序列化时会直接进行此处的 public 构造函数,而不会从 public static DefinitionCollection GetUniqueInstance() 进入。 // 此时必须通过这一句保证 _uniqueInstance 与本全局对象的同步。 _uniqueInstance = this; // }
private void CriterionBtnOnClick(object sender, EventArgs eventArgs) { var instance = (sender as Button).Tag as StaticCriterion; ActiveCriterion = instance; }