| namespace OfficeOpenXml.Style.Dxf; | 
 |  | 
 | public class ExcelDxfNumberFormat : DxfStyleBase<ExcelDxfNumberFormat> { | 
 |   public ExcelDxfNumberFormat(ExcelStyles styles) | 
 |       : base(styles) {} | 
 |  | 
 |   private 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 => _numFmtID; | 
 |     internal set => _numFmtID = value; | 
 |   } | 
 |  | 
 |   private string _format = ""; | 
 |  | 
 |   public string Format { | 
 |     get => _format; | 
 |     set { | 
 |       _format = value; | 
 |       NumFmtID = ExcelNumberFormat.GetFromBuildIdFromFormat(value); | 
 |     } | 
 |   } | 
 |  | 
 |   protected internal override string Id => 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 => !string.IsNullOrEmpty(Format); | 
 |  | 
 |   protected internal override ExcelDxfNumberFormat Clone() { | 
 |     return new(_styles) { | 
 |       NumFmtID = NumFmtID, | 
 |       Format = Format, | 
 |     }; | 
 |   } | 
 | } |