diff --git a/ClosedXML/ClosedXML/ClosedXML/Excel/Cells/XLCell.cs b/ClosedXML/ClosedXML/ClosedXML/Excel/Cells/XLCell.cs index 409b9ed..9b20f00 100644 --- a/ClosedXML/ClosedXML/ClosedXML/Excel/Cells/XLCell.cs +++ b/ClosedXML/ClosedXML/ClosedXML/Excel/Cells/XLCell.cs @@ -1219,17 +1219,12 @@ return retVal; } - //if (currValue is TimeSpan) - //{ - - // if (typeof(T) == typeof(String)) - // return (T)Convert.ChangeType(currValue.ToString(), typeof(T)); - // return (T)currValue; - //} - - //if (currValue is IXLRichText) - // return (T)RichText; + if (typeof(T) == typeof(IXLRichText)) + { + value = (T) RichText; + return true; + } //if (typeof(T) == typeof(String)) //{ diff --git a/ClosedXML/ClosedXML/ClosedXML_Tests/Excel/Cells/XLCellTest.cs b/ClosedXML/ClosedXML/ClosedXML_Tests/Excel/Cells/XLCellTest.cs index f322d50..0cf7043 100644 --- a/ClosedXML/ClosedXML/ClosedXML_Tests/Excel/Cells/XLCellTest.cs +++ b/ClosedXML/ClosedXML/ClosedXML_Tests/Excel/Cells/XLCellTest.cs @@ -145,5 +145,29 @@ Assert.IsTrue(success); Assert.AreEqual(timeSpan, outValue); } + + [TestMethod] + public void TryGetValue_RichText_Good() + { + var ws = new XLWorkbook().Worksheets.Add("Sheet1"); + IXLRichText outValue; + var cell = ws.Cell("A1"); + cell.RichText.AddText("Anything"); + var success = cell.TryGetValue(out outValue); + Assert.IsTrue(success); + Assert.AreEqual(cell.RichText, outValue); + } + + [TestMethod] + public void TryGetValue_RichText_Bad() + { + var ws = new XLWorkbook().Worksheets.Add("Sheet1"); + IXLRichText outValue; + var cell = ws.Cell("A1").SetValue("Anything"); + var success = cell.TryGetValue(out outValue); + Assert.IsTrue(success); + Assert.AreEqual(cell.RichText, outValue); + Assert.AreEqual("Anything", outValue.ToString()); + } } } \ No newline at end of file