If I simply import the xls file with the XlsFormatProvider that RadSpreadProcessing offers and then export it either to xls or xlsx format, the following message pops up when opening the document in MS Excel:
The exported XLS or XLSX file with RadSpreadProcessing contains an additional <definedName>:
<?xml version="1.0" encoding="utf-8"?>
<workbook xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<sheets>
<sheet sheetId="1" name="Sheet1" state="visible" r:id="rId1" />
</sheets>
<definedNames>
<definedName name="Print_Titles" localSheetId="0" hidden="false">Sheet1!$A$1:$IV$3</definedName>
<definedName name="_xlnm.Print_Area" localSheetId="0" hidden="false">Sheet1!$A:$G</definedName>
<definedName name="_xlnm.Print_Titles" localSheetId="0" hidden="false">Sheet1!$1:$3</definedName>
</definedNames>
</workbook>
For the Telerik Spreadsheet control, XlsxFormatProvider.Export() API is used for saving the .xlsx file manually without the UI command(Save As dialog) invocation. This API is currently returning a byte stream.
The requirement is that the API should also intimate the user whether the export is successful or not by returning a boolean value.
Note: I think we can implement this requirement at the base level which is for the BinaryFormatProviderBase class or atleast at the FormatProviderBase class.
ArgumentNullException is thrown when importing a document containing a rule with no set format.
Some fonts are not measured correctly by RadTextMeasurer.
Hello! I'd like to request that the WorksheetPrintOptions library be able to specify what duplex to print. This is regarding:
namespace Telerik.Windows.Documents.Spreadsheet.Model;
In Excel there are currently 3 options (for my printer):
Print One Sided
Print on Both Sides (pages flip on Long Edge)
Print on Both Sides (pages flip on Short Edge)
Currently at my company, in order to save paper the default for everyone's printers is Print on Both Sides (Long Edge). (Our printer, btw, is a Canon iR-ADV C3826 UFR II).
On a report I have created in Excel with Telerik, it's 3 pages but it's meant to clip onto a clipboard so it can't be double sided. So I would like the option to do this:
worksheet.WorksheetPageSetup.PrintOptions.Duplex = PrintOptionsDuplex.OneSided;
something like that. However you want to implement it is fine. Duplex may be the wrong word here. Maybe just .OneSided = true; or .BothSidesLong = true; or something.
Anyhow, I think that would be handy for my particular instance, and I think printing both sided for most people might save a lot of paper too so it might benefit other situations as well.
For now, I will instruct my clients they have to just manually switch to One Sided each time the print this report.
Thanks!
This will enable printing with the following printing options: - Fit Sheet on One Page - Fit All Columns on One Page - Fit All Rows on One Page - Custom automatic scaling A possible implementation of a similar behavior is to use the PageSize property of WorksheetPageSetup and subtract the corresponding margin values (from the Margins property) from the width to calculate how many columns are fitting in some particular page size with 100% scale factor. Available in R2 2018 Official Release version.
Currently, the chart is generated considering the format applied to the cells. Thus, when the decimal part is clipped, duplicated values may occur and the developer doesn't have the option to update it:
This is the code:
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets.Add();
List<string> categories = new List<string> { "New", "In Progress", "Ready for Test", "Done", "Declined" };
worksheet.Cells[0, 0].SetValue("New");
worksheet.Cells[0, 1].SetValue(1);
worksheet.Cells[0, 2].SetValue(2.5);
worksheet.Cells[1, 0].SetValue("In Progress");
worksheet.Cells[1, 1].SetValue(2.8);
worksheet.Cells[1, 2].SetValue(0);
worksheet.Cells[2, 0].SetValue("Ready for Test");
worksheet.Cells[2, 1].SetValue(2);
worksheet.Cells[2, 2].SetValue(1);
worksheet.Cells[3, 0].SetValue("Done");
worksheet.Cells[3, 1].SetValue(1.4);
worksheet.Cells[3, 2].SetValue(0);
worksheet.Cells[4, 0].SetValue("Declined");
worksheet.Cells[4, 1].SetValue(3);
worksheet.Cells[4, 2].SetValue(0);
FloatingChartShape chartShape = new FloatingChartShape(worksheet, new CellIndex(5, 5), new CellRange(0, 0, 4, 2),ChartType.Column)
{
Width = 400,
Height = 250
};
worksheet.Charts.Add(chartShape);
CellSelection cellSelection = worksheet.Cells[new CellIndex(0, 1), new CellIndex(4, 2)];
CellValueFormat specialFormat = new CellValueFormat("0");
cellSelection.SetFormat(specialFormat);
string outputFilePath = "SampleFile.xlsx";
Telerik.Windows.Documents.Spreadsheet.FormatProviders.IWorkbookFormatProvider formatProvider = new Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.Xlsx.XlsxFormatProvider();
using (Stream output = new FileStream(outputFilePath, FileMode.Create))
{
formatProvider.Export(workbook, output);
}
Process.Start(new ProcessStartInfo() { FileName = outputFilePath, UseShellExecute = true });
The requires options are setting the major/minor units for the axis:
Add support for creating Tables and applying tables styles (predefined ones or custom).
Error bars in charts you create can help you see margins of error and standard deviations at a glance. They can be shown on all data points or data markers in a data series as a standard error amount, a percentage, or a standard deviation. You can set your own values to display the exact error amounts you want.