public void RemoveItem(SelectedItemModel <T> item) { if (this.SelectedItems.Contains(item)) { this.SelectedItems.Remove(item); this.CurrentSelectedItem = null; //this.OnItemsChanged?.Invoke(this, EventArgs.Empty); } }
private void AddItemToSelectedList(T value) { //Do not add duplicate values if (this.SelectedItems.Any(i => i.Value.Equals(value))) { return; } if (value == null || string.IsNullOrWhiteSpace(_getSelectedItemTitleFunc(value))) { return; } var newItem = new SelectedItemModel <T>(value, _getSelectedItemTitleFunc); newItem.OnRequestRemove += (sender, i) => { this.RemoveItem(((SelectedItemModel <T>)sender)); }; this.SelectedItems.Add(newItem); //this.OnItemsChanged?.Invoke(this, EventArgs.Empty); }
/// <summary> /// Returns the model for each NodeSelector persisted item /// </summary> /// <param name="id"></param> /// <param name="treeId"> </param> /// <param name="url"> </param> /// <returns></returns> internal SelectedItemModel GetNodeSelectorItemModel(HiveId id, Guid treeId, Func<UrlHelper> url) { _ensureInitialized(); var model = new SelectedItemModel(); var entity = GetEntity(id); if (entity == null) return null; model.NodeName = _getTreeNodeAlias(entity); model.NodeId = entity.Id; var icon = entity.EntitySchema.GetXmlConfigProperty("icon"); if (!string.IsNullOrEmpty(icon)) { if (icon.Contains(".")) { model.NodeIcon = url().Content( _backOfficeRequestContext.Application.Settings.RebelFolders. DocTypeIconFolder + "/" + icon); } else { model.NodeStyle = icon; } } return model; }