| using System; |
| using System.Collections.Generic; |
| using System.Linq; |
| using System.Text; |
| using System.Xml; |
| |
| namespace OfficeOpenXml.Style.Dxf |
| { |
| public class ExcelDxfNumberFormat : DxfStyleBase<ExcelDxfNumberFormat> |
| { |
| public ExcelDxfNumberFormat(ExcelStyles styles) : base(styles) |
| { |
| |
| } |
| int _numFmtID=int.MinValue; |
| /// <summary> |
| /// Id for number format |
| /// |
| /// Build in ID's |
| /// |
| /// 0 General |
| /// 1 0 |
| /// 2 0.00 |
| /// 3 #,##0 |
| /// 4 #,##0.00 |
| /// 9 0% |
| /// 10 0.00% |
| /// 11 0.00E+00 |
| /// 12 # ?/? |
| /// 13 # ??/?? |
| /// 14 mm-dd-yy |
| /// 15 d-mmm-yy |
| /// 16 d-mmm |
| /// 17 mmm-yy |
| /// 18 h:mm AM/PM |
| /// 19 h:mm:ss AM/PM |
| /// 20 h:mm |
| /// 21 h:mm:ss |
| /// 22 m/d/yy h:mm |
| /// 37 #,##0 ;(#,##0) |
| /// 38 #,##0 ;[Red](#,##0) |
| /// 39 #,##0.00;(#,##0.00) |
| /// 40 #,##0.00;[Red](#,##0.00) |
| /// 45 mm:ss |
| /// 46 [h]:mm:ss |
| /// 47 mmss.0 |
| /// 48 ##0.0E+0 |
| /// 49 @ |
| /// </summary> |
| public int NumFmtID |
| { |
| get |
| { |
| return _numFmtID; |
| } |
| internal set |
| { |
| _numFmtID = value; |
| } |
| } |
| string _format=""; |
| public string Format |
| { |
| get |
| { |
| return _format; |
| } |
| set |
| { |
| _format = value; |
| NumFmtID = ExcelNumberFormat.GetFromBuildIdFromFormat(value); |
| } |
| } |
| |
| protected internal override string Id |
| { |
| get |
| { |
| return Format; |
| } |
| } |
| |
| protected internal override void CreateNodes(XmlHelper helper, string path) |
| { |
| if (NumFmtID < 0 && !string.IsNullOrEmpty(Format)) |
| { |
| NumFmtID = _styles._nextDfxNumFmtID++; |
| } |
| helper.CreateNode(path); |
| SetValue(helper, path + "/@numFmtId", NumFmtID); |
| SetValue(helper, path + "/@formatCode", Format); |
| } |
| protected internal override bool HasValue |
| { |
| get |
| { |
| return !string.IsNullOrEmpty(Format); |
| } |
| } |
| protected internal override ExcelDxfNumberFormat Clone() |
| { |
| return new ExcelDxfNumberFormat(_styles) { NumFmtID = NumFmtID, Format = Format }; |
| } |
| } |
| } |