Exemplo n.º 1
0
 /// <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);
 }
Exemplo n.º 2
0
        /// <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);
        }