public DetailViewController(bool isNew) : base("DetailViewController", null) { if (isNew) { UIBarButtonItem doneItem = new UIBarButtonItem(UIBarButtonSystemItem.Done); this.NavigationItem.RightBarButtonItem = doneItem; doneItem.Clicked += (sender, e) => { this.PresentingViewController.DismissViewController(true, null); var vcs = this.PresentingViewController.ChildViewControllers; var ivc = vcs[0] as ItemsViewController; ivc.TableView.ReloadData(); Console.WriteLine("allItems: {0}, tableViewRows: {1}", BNRItemStore.allItems.Count, ivc.TableView.NumberOfRowsInSection(0)); }; UIBarButtonItem cancelItem = new UIBarButtonItem(UIBarButtonSystemItem.Cancel); this.NavigationItem.LeftBarButtonItem = cancelItem; cancelItem.Clicked += (sender, e) => { // If the user cancelled, then remove the BNRItem from the store BNRItemStore.RemoveItem(Item); this.PresentingViewController.DismissViewController(true, null); var vcs = this.PresentingViewController.ChildViewControllers; var ivc = vcs[0] as ItemsViewController; ivc.TableView.ReloadData(); Console.WriteLine("allItems: {0}, tableViewRows: {1}", BNRItemStore.allItems.Count, ivc.TableView.NumberOfRowsInSection(0)); }; } }
public override void CommitEditingStyle(UITableView tableView, UITableViewCellEditingStyle editingStyle, NSIndexPath indexPath) { //base.CommitEditingStyle(tableView, editingStyle, indexPath); if (editingStyle == UITableViewCellEditingStyle.Delete) { UITableViewCell cell = tableView.CellAt(indexPath); if (cell != null) { cell.BackgroundColor = UIColor.White; } BNRItem itemToRemove = BNRItemStore.allItems[indexPath.Row]; BNRItemStore.RemoveItem(itemToRemove); NSIndexPath[] indexPaths = new NSIndexPath[] { indexPath }; TableView.DeleteRows(indexPaths, UITableViewRowAnimation.Automatic); Console.WriteLine("allItems: {0}, tableViewRows: {1}", BNRItemStore.allItems.Count, tableView.NumberOfRowsInSection(0)); } }