| 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 }; | |
| } | |
| } | |
| } |