Currently, similar conversions should be manually implemented by the users.
Sample method that could be used:
public static Color HexStringToColor(string hexColor)
{
// Remove the # at the front.
if (hexColor.StartsWith("#"))
{
hexColor = hexColor.Substring(1, hexColor.Length - 1);
}
byte a = 255;
byte r = 255;
byte g = 255;
byte b = 255;
int start = 0;
// Handle ARGB strings (8 characters long).
if (hexColor.Length == 8)
{
start = 2;
}
//Handle contracted RGB strings (3 characters long)
if (hexColor.Length == 3)
{
hexColor = string.Format("{0}{0}{1}{1}{2}{2}", hexColor[0], hexColor[1], hexColor[2]);
}
else if (hexColor.Length < 6)
{
hexColor = hexColor.PadLeft(6, '0');
}
// Convert RGB characters to bytes.
r = byte.Parse(hexColor.Substring(start, 2), NumberStyles.HexNumber);
g = byte.Parse(hexColor.Substring(start + 2, 2), NumberStyles.HexNumber);
b = byte.Parse(hexColor.Substring(start + 4, 2), NumberStyles.HexNumber);
return Color.FromArgb(a, r, g, b);
}
When a chart is created with RadSpreadProcessing, by default it is exported with legend showing category list. If an xlsx file with a chart with legend showing only series is imported and exported, it will be changed to category list as well. API to switch between the two should be added.
Legend showing category list:
Legend showing series:
With the current implementation, the Notes support only a rectangular shape.
Examples:
For example:
Renaming a sheet named "Sheet1" to "Sheet 1", should update formulas references to it to 'Sheet 1!' (notice single quotes), which it does not. The formula =SUM(Sheet1!A2:C2) changes to the invalid expression =SUM(Sheet 1!A2:C2). This breaks formulas referencing that sheet.
Workaround:
Iterate all cells with formulas in the workbook and add single quotes to the beginning and end of sheet name reference. The attached project changes the name of Sheet1 and then fixes all formula references to it by enclosing its name in single quotes.
SpreadProcessing: Upon export, sheet reference in formulas such as VLOOKUP is lost when using whole row/column references.
For example the formula
=VLOOKUP("test",Sheet1!A:C,1,0) is exported as
=VLOOKUP("test",A:C,1,0)
The values applied to the row/column should be explicitly set on each used cell as well. Otherwise, if they are applied on row/column only, the used cells don't use the desired values when opening the document.
To reproduce:
Observed: All cells except A1 have the specified color.
Workaround: Use cell selection, e.g.:
sheet.Cells[0,10].SetFill(PatternFill.CreateSolidFill(Colors.Red));