コード例 #1
0
 public Worksheet(string name, int id, IWorksheetCellCollection cells, SharedStrings strings)
 {
     _strings = strings;
     _cells   = cells;
     Name     = name;
     Id       = id;
     _ns      = new NamespaceDirectory();
 }
コード例 #2
0
        public XElement GetElement()
        {
            var ns = new NamespaceDirectory();
            var w  = ns.NamespaceMain;
            var xf = new XElement(w.GetName("xf"));

            if (fontId > -1)
            {
                xf.Add(new XAttribute("fontId", fontId));
            }
            xf.Add(new XAttribute("xfId", GetId?.Invoke() ?? 0));
            return(xf);
        }
コード例 #3
0
        public XElement GetElement()
        {
            var ns = new NamespaceDirectory();
            var w  = ns.NamespaceMain;
            var c  = new XElement(w.GetName("c"));

            c.Add(new XAttribute("r", Address));
            if (GetFormatId != null)
            {
                c.Add(new XAttribute("s", GetFormatId()));
            }
            AddValue(c, ns);
            return(c);
        }
コード例 #4
0
ファイル: SharedStrings.cs プロジェクト: bekk/ExcelBuilder
        public XDocument GetDocument()
        {
            var ns      = new NamespaceDirectory();
            var w       = ns.NamespaceMain;
            var sst     = new XElement(w.GetName("sst"));
            var strings = _sharedStrings ?? Enumerable.Empty <string>();

            sst.Add(new XAttribute("count", strings.Count()));
            sst.Add(new XAttribute("uniqueCount", strings.Count()));
            sst.Add(_sharedStrings
                    .Select(txt =>
                            new XElement(w.GetName("si"), new XElement(w.GetName("t"), txt))));
            return(new XDocument(ns.DefaultDeclaration, sst));
        }
コード例 #5
0
        public XElement GetElement()
        {
            var ns   = new NamespaceDirectory();
            var w    = ns.NamespaceMain;
            var font = new XElement(w.GetName("font"));

            if (_textStyle.HasFlag(TextStyles.Bold))
            {
                font.Add(new XElement(w.GetName("b")));
            }
            if (_textStyle.HasFlag(TextStyles.Italic))
            {
                font.Add(new XElement(w.GetName("i")));
            }
            return(font);
        }
コード例 #6
0
        public XDocument GetDocument()
        {
            var styleRepo = new StyleConsolidator(_formattables.SelectMany(f => f));

            if (!styleRepo.CellFormats.Any())
            {
                return(null);
            }
            var ns         = new NamespaceDirectory();
            var w          = ns.NamespaceMain;
            var styleSheet = new XElement(w.GetName("styleSheet"));

            Add(styleSheet, styleRepo.Fonts, new XElement(w.GetName("fonts")));
            AddFills(w, styleSheet);
            AddBorders(w, styleSheet);
            Add(styleSheet, styleRepo.CellFormats, new XElement(w.GetName("cellXfs")));
            return(new XDocument(ns.DefaultDeclaration, styleSheet));
        }
コード例 #7
0
 protected override void AddValue(XElement cell, NamespaceDirectory ns)
 {
     cell.Add(new XElement(ns.NamespaceMain.GetName("v"), ToString(Value)));
 }
コード例 #8
0
 protected abstract void AddValue(XElement cell, NamespaceDirectory ns);
コード例 #9
0
 protected override void AddValue(XElement cell, NamespaceDirectory ns)
 {
     cell.Add(new XAttribute("t", "s"));
     cell.Add(new XElement(ns.NamespaceMain.GetName("v"), _value));
 }