public bool Add(string Key, BaseResource _Item) { BaseResource Item = (BaseResource)_Item.Clone(); Item.Key = Key; lock (ResLock) { if (Resources.Contains(Key) == true) { Resources[Key] = Item; return(true); } Resources.Add(Key, Item); } if (ResourceItemChanged != null && !BlockUpdate) { ResourceItemChanged(this, Key); } return(true); }