I have a grid whose coloumns are dynamically generated. I am trying to apply the sum aggregate function but its not working . could you please help with that. Also the columns use a converter.
foreach
(DayBE _dayBE
in
_days.OrderBy(x => x.date).ToList())
{
string
headerText = _dayBE.date.ToString(
"dd-MMM"
);
GridViewDataColumn gvdc =
new
GridViewDataColumn() { IsReadOnly=
false
, Header = headerText, DataMemberBinding =
new
Binding(
"period"
) { Converter =
new
GridFormatter(), ConverterParameter =
new
List<
object
>() { _dayBE.date } } };
//AggregateFunction sum = new MaxFunction();
//sum.Caption = "Total: ";
//gvdc.AggregateFunctions.Add(fn);
radGridView.Columns.Add(gvdc);
}
public
class
GridFormatter : IValueConverter
{
public
object
Convert(
object
value, Type targetType,
object
parameter, CultureInfo culture)
{
ObservableCollection<DayBE> weeks = value
as
ObservableCollection<DayBE>;
var val = from w
in
weeks
where w.date.Equals((parameter
as
List<
object
>)[0])
select w.allocation;
return
val.FirstOrDefault();
}
public
object
ConvertBack(
object
value, Type targetType,
object
parameter, CultureInfo culture)
{
ObservableCollection<DayBE> _test1 =
new
ObservableCollection<DayBE>();
DayBE _test =
new
DayBE();
_test.date = System.Convert.ToDateTime((parameter
as
List<
object
>)[0].ToString());
_test.allocation = System.Convert.ToDouble(value);
_test1.Add(_test);
return
_test1;
}
}