You can save data and formatting to an XML file or just data. Data and formatting are imported when loading from an XML file.
You can use the OpenXmlAsnyc method to load data in code and the SaveXmlAsync method to save data.
This example opens and saves to XML.
CS |
Copy Code |
---|---|
private void Grid_Loaded_1(object sender, RoutedEventArgs e) { gcSpreadSheet1.Sheets[0].Cells[0, 0, 2, 2].Text = "Test"; } private async void Button_Click_1(object sender, RoutedEventArgs e) { try { var filePicker = new Windows.Storage.Pickers.FileSavePicker(); filePicker.FileTypeChoices.Add("XML Files", new List<string>() { ".xml" }); filePicker.SuggestedFileName = "New SpreadSheet File"; Windows.Storage.StorageFile storageFile = await filePicker.PickSaveFileAsync(); if (storageFile != null) { using (var stream = await storageFile.OpenStreamForWriteAsync()) { var fileName = storageFile.FileType.ToUpperInvariant(); await gcSpreadSheet1.SaveXmlAsync(stream); //await gcSpreadSheet1.SaveXmlAsync(stream, true); } } } catch (Exception ex) { Windows.UI.Popups.MessageDialog dialog = new Windows.UI.Popups.MessageDialog(ex.Message, "Error"); dialog.ShowAsync(); } } private async void Button_Click_2(object sender, RoutedEventArgs e) { try { var filePicker = new Windows.Storage.Pickers.FileOpenPicker(); filePicker.FileTypeFilter.Add(".xml"); Windows.Storage.StorageFile storageFile = await filePicker.PickSingleFileAsync(); if (storageFile != null) { using (var stream = await storageFile.OpenStreamForReadAsync()) { await gcSpreadSheet1.OpenXmlAsync(stream); } } } catch (Exception ex) { Windows.UI.Popups.MessageDialog dialog = new Windows.UI.Popups.MessageDialog(ex.Message, "Error"); dialog.ShowAsync(); } } } |
VB |
Copy Code |
---|---|
Private Sub MainPage_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded gcSpreadSheet1.Sheets(0).Cells(0, 0, 2, 2).Text = "Test" End Sub Private Async Sub Button_Click_1(sender As Object, e As RoutedEventArgs) Try Dim filePicker As New Windows.Storage.Pickers.FileSavePicker() filePicker.FileTypeChoices.Add("XML Files", New List(Of String)() From {".xml"}) filePicker.SuggestedFileName = "New SpreadSheet File" Dim storageFile As Windows.Storage.StorageFile = Await filePicker.PickSaveFileAsync() If storageFile IsNot Nothing Then Using stream = Await storageFile.OpenStreamForWriteAsync() Dim fileName = storageFile.FileType.ToUpperInvariant() await gcSpreadSheet1.SaveXmlAsync(stream) 'await gcSpreadSheet1.SaveXmlAsync(stream, True) End Using End If Catch ex As Exception Dim dialog As Windows.UI.Popups.MessageDialog = New Windows.UI.Popups.MessageDialog(ex.Message, "Error") dialog.ShowAsync() End Try End Sub Private Async Sub Button_Click_2(sender As Object, e As RoutedEventArgs) Try Dim filePicker As New Windows.Storage.Pickers.FileOpenPicker() filePicker.FileTypeFilter.Add(".xml") Dim storageFile As Windows.Storage.StorageFile = Await filePicker.PickSingleFileAsync() If storageFile IsNot Nothing Then Using stream = Await storageFile.OpenStreamForReadAsync() await gcSpreadSheet1.OpenXmlAsync(stream) End Using End If Catch ex As Exception Dim dialog As Windows.UI.Popups.MessageDialog = New Windows.UI.Popups.MessageDialog(ex.Message, "Error") dialog.ShowAsync() End Try End Sub |