Example #1
0
        private void ReadExcel(string fn)
        {
            var templateFile = AppDomain.CurrentDomain.BaseDirectory + "//Template1.txt";

            Parser = new ExcelTableParser(fn);
            var items = Parser.Parse(templateFile);

            workbook = Parser.Workbook;
            var categories = items.GroupBy(i => i.TypeCategory).OrderBy(g => g.Key);

            foreach (var cate in categories)
            {
                var node = treeView1.Nodes.Add(cate.Key);
                node.Tag = cate;
                node.Nodes.AddRange(cate.Select(c => new TreeNode()
                {
                    Tag  = c,
                    Text = string.Format("{0}({1}:R{2})", c.TypeCategory, c.SheetName, c.RowNum + 1)
                }).ToArray());
            }

            foreach (var col in VItem.Columns)
            {
                gv.Columns.Add(col.Key, col.Key);
            }
        }
Example #2
0
        private DataGridViewRow BindRow(VItem vitem, DataGridViewRow row = null)
        {
            if (row == null)
            {
                row     = new DataGridViewRow();
                row.Tag = vitem;
                row.CreateCells(gv);
            }

            for (int i = 0; i < VItem.Columns.Count; i++)
            {
                var vcell = vitem.VCells[i];
                if (ChangedCells.Contains(vcell))
                {
                    row.Cells[i].Style.BackColor = Color.SkyBlue;
                }
                var cell = row.Cells[i];

                if (gv.Columns[i].Name == "TYPE & SPECIFICATION")
                {
                    cell.Value    = vitem.TypeDescription;
                    cell.ReadOnly = true;
                }
                else if (gv.Columns[i].Name == "EQUIP №")
                {
                    cell.Value    = vitem.EquipName;
                    cell.ReadOnly = true;
                }
                else
                {
                    cell.Value = ExcelTableParser.GetCellValue(vitem.VCells[i]);
                    cell.Tag   = vitem.VCells[i];
                }
            }

            return(row);
        }