You can't simply add [%] right after the number. A
PER
column is type of numeric (probably decimal), so it can't store a text!
To resolve it, you can add
computed/expression column[
^]. See:
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("PER", typeof(decimal)));
dt.Rows.Add(new object[]{0.85});
dt.Rows.Add(new object[]{0.99});
dt.Rows.Add(new object[]{0.67});
dt.Rows.Add(new object[]{0.46});
dt.Rows.Add(new object[]{0.27});
DataColumn dc = new DataColumn("PER2", typeof(string));
dc.Expression = "(PER*100) + '%'";
dt.Columns.Add(dc);
Result:
PER PER2
0,85 85,00%
0,99 99,00%
0,67 67,00%
0,46 46,00%
0,27 27,00%
For further details, please see:
DataColumn.Expression Property (System.Data)[
^]