public void DownIsYesNeighbor() { //if they are neighbors then any numbers that are not within +/- 1 of each other must be removed //and they are neighbors in this case List <int> numsToRemove = AllowedValues .Where(x => GridPanelUnder != null) .Where(x => !GridPanelUnder.HasNeighborValueFor(x)) .ToList(); if (numsToRemove.Any()) { numsToRemove.ForEach(removeSingleValue); } if (GridPanelUnder != null) { numsToRemove = GridPanelUnder.AllowedValues .Where(x => !HasNeighborValueFor(x)) .ToList(); if (numsToRemove.Any()) { numsToRemove.ForEach(GridPanelUnder.removeSingleValue); } } }
private void downIsNotNeighbor() { if (GridPanelUnder != null && GridPanelUnder.AllowedValues.Count == 1 && AllowedValues.Count != 1) { RemoveNonNeighborValue(GridPanelUnder.AllowedValues.First()); UpdateAllowedValuesLabel(); } if (GridPanelUnder != null && AllowedValues.Count == 1 && GridPanelUnder.AllowedValues.Count != 1) { GridPanelUnder.RemoveNonNeighborValue(AllowedValues.First()); GridPanelUnder.UpdateAllowedValuesLabel(); } }