diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/Style/XLFill.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/Style/XLFill.cs index 8e18233..354000d 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/Style/XLFill.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/Style/XLFill.cs @@ -51,7 +51,7 @@ _container.Styles.ForEach(s => s.Fill.BackgroundColor = value); else { - _patternType = XLFillPatternValues.Solid; + _patternType = value.HasValue ? XLFillPatternValues.Solid : XLFillPatternValues.None; _patternColor = new XLColor(value); _patternBackgroundColor = new XLColor(value); diff --git a/ClosedXML/ClosedXML/ClosedXML_Tests/Excel/Styles/XLFillTests.cs b/ClosedXML/ClosedXML/ClosedXML_Tests/Excel/Styles/XLFillTests.cs index 913657d..84994d3 100644 --- a/ClosedXML/ClosedXML/ClosedXML_Tests/Excel/Styles/XLFillTests.cs +++ b/ClosedXML/ClosedXML/ClosedXML_Tests/Excel/Styles/XLFillTests.cs @@ -29,5 +29,19 @@ var fill2 = new XLFill { PatternBackgroundColor = XLColor.Red }; Assert.IsFalse(fill1.Equals(fill2)); } + + [TestMethod] + public void BackgroundColorSetsPattern() + { + var fill = new XLFill { BackgroundColor = XLColor.Blue }; + Assert.AreEqual(XLFillPatternValues.Solid, fill.PatternType); + } + + [TestMethod] + public void BackgroundNoColorSetsPatternNone() + { + var fill = new XLFill { BackgroundColor = XLColor.NoColor }; + Assert.AreEqual(XLFillPatternValues.None, fill.PatternType); + } } }