Check Custom Number Format when Setting Style.Custom Property with C++
Possible Usage Scenarios
If you assign an invalid custom number format to Style.GetCustom() property, then Aspose.Cells will not throw any exception. But if you want that Aspose.Cells should check if the assigned custom number format is valid or not, then please set the Workbook.GetCheckCustomNumberFormat() property to true.
Check Custom Number Format when setting Style.Custom property
The following sample code assigns an invalid custom number format to Style.GetCustom() property. Since we have already set Workbook.GetCheckCustomNumberFormat() property to true, therefore it throws an exception, e.g., Invalid number format. Please read the comments inside the code for more help.
Sample Code
#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;
int main()
{
Aspose::Cells::Startup();
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
// Create an instance of Workbook class
Workbook book;
// Setting this property to true will make Aspose.Cells to throw exception
// when invalid custom number format is assigned to Style.Custom property
book.GetSettings().SetCheckCustomNumberFormat(true);
// Access first worksheet
Worksheet sheet = book.GetWorksheets().Get(0);
// Access cell A1 and put some number to it
Cell cell = sheet.GetCells().Get(u"A1");
cell.PutValue(2347);
// Access cell's style and set its Style.Custom property
Style style = cell.GetStyle();
// This line will throw exception if Workbook.Settings.CheckCustomNumberFormat is set to true
style.SetCustom(u"ggg @ fff"); // Invalid custom number format
std::cout << "Custom number format set." << std::endl;
Aspose::Cells::Cleanup();
}