Wednesday, October 17, 2012

How to set excel worksheet in silverlight?

How to set excel worksheet in silverlight?

I want to export an element(Maybe gridview , List...etc) as .xls file with setting WorkSheet by string giving in silerlight 4.0. How can I solve this problem?

The following are Export function by using RadGridView API...

public RadGridView Grid { get; private set; } void ExportWithoutDetail() {     SaveFileDialog saveDialog = new SaveFileDialog();     saveDialog.Filter = ReadFilter();     saveDialog.FilterIndex = 4;       if (saveDialog.ShowDialog() == true)     {         SetAllColumnVisibile();         Stream stream = null;         try         {             using (stream = saveDialog.OpenFile())             {                 GridViewExportOptions opt = CreateExportOptions();                  switch (saveDialog.FilterIndex)                 {                     case 1: //*.txt                         opt.Format = ExportFormat.Text;                         break;                     case 2: //*.html                         opt.Format = ExportFormat.Html;                         break;                     case 3: //*.csv                         opt.Format = ExportFormat.Csv;                         break;                     case 4: //*.xls                         opt.Format = ExportFormat.ExcelML;                         break;                     case 5: //*.xml                         opt.Format = ExportFormat.ExcelML;                         break;                 }                 Grid.Export(stream, opt);             }         }         catch (Exception ex)         {             MessageBox.Show(ex.Message);         }         finally         {             if (stream != null)                 stream.Close();          }     } } 

Answers & Comments...

Answer: 1

You can export the grid or list to an excel by using this code,

 if ((xamGridtemplateDet.ItemsSource).Count > 0)         {             Workbook wrkbook = new Workbook();              Worksheet wrkSHT = wrkbook.Worksheets.Add("Sheet 1");              wrkSHT.DisplayOptions.PanesAreFrozen = true;             wrkSHT.DisplayOptions.FrozenPaneSettings.FrozenRows = 1;              wrkSHT.DefaultColumnWidth = 5000;             int currentcolumn = 0;             foreach (TemplateDetailUI column in xamGridtemplateDet.ItemsSource)             {                 if (column != null)                 {                     SetCellValue(wrkSHT.Rows[0].Cells[currentcolumn], column.ColumnName);                     currentcolumn++;                 }             }               SaveExport(wrkbook); 

}

     public void SaveExport(Workbook dataworkbook)     {         try         {             bool? showDialog = this.dialog.ShowDialog();             if (showDialog == true)             {                 using (System.IO.Stream exportstream = dialog.OpenFile())                 {                     dataworkbook.Save(exportstream);                     exportstream.Close();                 }               }         }         catch (Exception ex)         {             throw ex;         }       } 
by : Sajeetharanhttp://stackoverflow.com/users/1749403




No comments:

Post a Comment

Send us your comment related to the topic mentioned on the blog