public static Excel.Workbook Initialize(this Excel.Workbook book, string jsonFilePath, Settings settings) { var fileName = Path.GetFileNameWithoutExtension(jsonFilePath); var jtoken = JsonConvert.DeserializeObject <JToken>(File.ReadAllText(jsonFilePath, Encoding.UTF8)); var jsonToken = jtoken.CreateJsonToken(); book.ChangeTheme(settings.Theme); Excel.Worksheet sheet = book.SheetList().First(); sheet.Spread(jsonToken, fileName); book.SaveForJsonEditor(fileName); _bookDatas.Add(new BookData { WorkbookName = $"{fileName}.xlsx", RootJsonToken = jsonToken, Workbook = book, JsonPath = jsonFilePath, }); book.SheetBeforeDoubleClick += Book_SheetBeforeDoubleClick; book.SheetBeforeRightClick += Book_SheetBeforeRightClick; book.AfterSave += Book_AfterSave; return(book); }