private void RaiseLanguageRemoveInteractionRequest(GeneralLanguage selectedItem) { var confirmation = new ConditionalConfirmation { Title = "Remove confirmation".Localize(null, LocalizationScope.DefaultCategory), Content = string.Format("Are you sure you want to remove Language '{0}'?".Localize(), selectedItem.LanguageCode) }; LanguageCommonConfirmRequest.Raise(confirmation, (x) => { if (x.Confirmed) { if (AddedItems.Contains(selectedItem)) { AddedItems.Remove(selectedItem); } else { if (UpdatedItems.Contains(selectedItem)) { UpdatedItems.Remove(selectedItem); } RemovedItems.Add(selectedItem); } InnerItems.Remove(selectedItem); } }); }
// Need to iterate through list so creating a custom object private List <List <InnerItems> > GetInnerItems(object propertyValue) { string sinneritems = ""; object inneritems = propertyValue; sinneritems = String.Format("{0}", inneritems); sinneritems = sinneritems.Insert(1, "{ \"Items\": ["); sinneritems = sinneritems.Substring(1, sinneritems.Length - 1); sinneritems = sinneritems.Remove(sinneritems.Length - 1); sinneritems += "]}"; dynamic results = JObject.Parse(sinneritems); List <List <InnerItems> > innerItemsList = new List <List <InnerItems> >(); List <InnerItems> linnerItems = new List <InnerItems>(); foreach (var items in results.Items) { foreach (var item in items) { string sItem = String.Format("{0}", item); InnerItems ninneritems = Newtonsoft.Json.JsonConvert.DeserializeObject <InnerItems>(sItem); linnerItems.Add(ninneritems); } innerItemsList.Add(linnerItems); } return(innerItemsList); }
private void RaiseLanguageAddInteractionRequest() { var item = new GeneralLanguage(); if (RaiseLanguageEditInteractionRequest(item, "Create Language".Localize())) { AddedItems.Add(item); InnerItems.Add(item); } }
private void OnItemsSourceChanged([CanBeNull] IList newValue) { InnerItems?.Dispose(); SetValue(InnerItemsPropertyKey, new HierarchicalItemsView(this, newValue)); if (FixedMode) { if (newValue == null) { SelectedItem = null; } else if (!Flatten(newValue).Contains(SelectedItem)) { SelectedItem = Flatten(newValue).FirstOrDefault(); } } }
public void Remove(T item) { if (AddedItems.Contains(item)) { AddedItems.Remove(item); } else { if (UpdatedItems.Contains(item)) { UpdatedItems.Remove(item); } RemovedItems.Add(item); } InnerItems.Remove(item); item.PropertyChanged -= OnPropertyChanged; }
public void Add(T item) { item.PropertyChanged += OnPropertyChanged; AddedItems.Add(item); InnerItems.Add(item); }
public void Dispose() { InnerItems.ToList().ForEach(x => x.PropertyChanged -= OnPropertyChanged); }