예제 #1
0
        /// <summary>
        /// 载入外部Excel数据
        /// </summary>
        /// <param name="path"></param>
        /// <returns></returns>
        public override List <ReadResult> LoadExcelData(string path)
        {
            DateTime startTime = DateTime.Now;

            string[] files = Directory.GetFiles(path);

            ConcurrentQueue <ReadResult> resultList = new ConcurrentQueue <ReadResult>();

            Parallel.ForEach(files, (file) =>
            {
                SpreadsheetControl spreadSheet = new SpreadsheetControl();
                spreadSheet.AllowDrop          = false;
                IWorkbook workbook             = spreadSheet.Document;
                workbook.LoadDocument(file);
                Worksheet worksheet = workbook.Worksheets[0];

                string fileName = Path.GetFileNameWithoutExtension(file);

                Filltable_测试结果(workbook.Worksheets[0], fileName, resultList);

                spreadSheet.Dispose();
            });


            DateTime endTime   = DateTime.Now;
            TimeSpan totalTime = endTime - startTime;
            double   time      = totalTime.TotalSeconds;

            ViewModuleManager.ModuleOf数据管理.richTextBox_消息栏.AppendText("已导入数据:" + resultList.Count + "条" + "\n");
            ViewModuleManager.ModuleOf数据管理.richTextBox_消息栏.AppendText("共耗时:" + time + "秒" + "\n");

            return(resultList.ToList());
        }
예제 #2
0
 //带参数的初始化
 public void controlInit(SpreadsheetControl spreadsheetMain, Dictionary <String, SimpleButton> buttons, Dictionary <String, Label> labels, String path, Dictionary <String, PopupMenu> menus, BarManager barmanager, XtraForm form, AlertControl alert, XSheetUser user)
 {
     this.buttons              = buttons;
     this.labels               = labels;
     this.spreadsheetMain      = spreadsheetMain;
     this.menus                = menus;
     this.rightClickBarManager = barmanager;
     AlertUtil.setAlert(alert, form);
     this.user  = user;
     this.form  = form;
     this.alert = alert;
     //CELLCHANGE
     executer = new CommandExecuter(user);
     executer.Attach(this);
     executeState = "OK";
     /*加载文档,后续根据不同设置配置,待修改TODO*/
     try
     {
         DateTime     date = new DateTime();
         StreamWriter sw   = new StreamWriter(@"ConsoleOutput.txt", true);
         date = DateTime.Now;
         sw.WriteLine("beforeLoadDoc:" + date.ToString());
         if (path.Length > 0)
         {
             spreadsheetMain.Document.LoadDocument(path);
         }
         sw.Flush();
         sw.Close();
     }
     catch (Exception e)
     {
         MessageBox.Show(e.ToString());
         spreadsheetMain.Dispose();
     }
 }
        private void Form1_Load(object sender, EventArgs e)
        {
            SpreadsheetControl spreadsheetControl = new SpreadsheetControl();
            string             path = Path.Combine(Application.StartupPath, "견적내역서_입력폼.xlsx");

            spreadsheetControl.LoadDocument(path);
            spreadsheetControl.BeginUpdate();
            IWorkbook workbook  = spreadsheetControl.Document;
            string    sheetName = $"Test_Test";
            Worksheet worksheet = workbook.Worksheets["Sample"];

            spreadsheetControl.SaveDocument();

            workbook.Worksheets[sheetName].CopyFrom(worksheet);

            //workbook.Worksheets.Add();
            spreadsheetControl.SaveDocument();
            spreadsheetControl.EndUpdate();
            spreadsheetControl.Dispose();
        }