private void _btSave_Click(object sender, EventArgs e) { if (doc == null) { return; } string file = FileSelector.BrowseFileForSave(FileType.All); if (file == null) { return; } using (CompoundDocument newDoc = CompoundDocument.Create(file)) { foreach (string streamName in doc.RootStorage.Members.Keys) { newDoc.WriteStreamData(new string[] { streamName }, doc.GetStreamData(streamName)); } byte[] bookdata = doc.GetStreamData("Workbook"); if (bookdata != null) { if (workbook == null) { workbook = WorkbookDecoder.Decode(new MemoryStream(bookdata)); } MemoryStream stream = new MemoryStream(); //WorkbookEncoder.Encode(workbook, stream); BinaryWriter writer = new BinaryWriter(stream); foreach (Record record in workbook.Records) { record.Write(writer); } writer.Close(); newDoc.WriteStreamData(new string[] { "Workbook" }, stream.ToArray()); } newDoc.Save(); } }