/// <summary> /// Add a new prize level /// </summary> /// <param name="model">The prize level model</param> /// <returns></returns> public bool AddPrizeLevel(PrizeLevelModel model) { if ((_prizeLevelList ?? (_prizeLevelList = new List <PrizeLevelModel>())).Count < MaxPrizeLevels) { model.Index = _prizeLevelList.Count; if (ValidationRequest != null) { foreach (var i in ValidationRequest.GetInvocationList()) { model.SetValidator(i as ValidationRequested); } } _prizeLevelList.Add(model); if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs("NumberOfPrizeLevels")); PropertyChanged(this, new PropertyChangedEventArgs("PrizeLevelList")); PropertyChanged(this, new PropertyChangedEventArgs("PrizeLevelList2")); } return(true); } else { return(false); } }
/// <summary> /// Remove a prize level /// </summary> /// <param name="model">The prize level to remove</param> /// <returns></returns> public bool RemovePrizeLevel(PrizeLevelModel model) { bool toReturn = _prizeLevelList == null ? false : _prizeLevelList.Remove(model); if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs("NumberOfPrizeLevels")); PropertyChanged(this, new PropertyChangedEventArgs("PrizeLevelList")); PropertyChanged(this, new PropertyChangedEventArgs("PrizeLevelList2")); } return(toReturn); }
/// <summary> /// Gets index of PrizeLevelModel instance /// </summary> /// <param name="model"></param> /// <returns></returns> public int IndexOfPrizeLevel(PrizeLevelModel model) { return(_prizeLevelList == null ? -1 : _prizeLevelList.IndexOf(model)); }