/// <summary> /// 增加特性物件到活動集合內 /// </summary> /// <param name="item">特性物件</param> public void Add(PropertyBase item) { item.StatusChanged += ItemStatusChanged; item.AffixChanged += ItemAffixChanged; if (item.Status == PropertyStatus.Enabled) { _Affix |= item.Affix; } _Collection.Add(item); item.Binding(this, true); }
/// <summary> /// 從活動集合內移除指定特性物件 /// </summary> /// <param name="item">特性物件</param> /// <returns>如果成功移除特性物件則為 true,否則為 false。</returns> public bool Remove(PropertyBase item) { bool result = _Collection.Remove(item); if (result) { if (item.Status == PropertyStatus.Enabled) { _AffixChanged = true; } item.StatusChanged -= ItemStatusChanged; item.AffixChanged -= ItemAffixChanged; item.BindingUnlock(); item.Binding(Scene); } return(result); }