main
 1using System;
 2using System.Linq.Expressions;
 3using DataDynamics.ActiveReports;
 4using gorilla.commons.utility;
 5
 6namespace MoMoney.Presentation.Model.reporting
 7{
 8    static public class ReportBindingExtensions
 9    {
10        static public void bind_to<T, K>(this ARControl control, Expression<Func<T, K>> func)
11        {
12            if (func.Body.is_an_implementation_of<MemberExpression>())
13            {
14                control.DataField = func.Body.downcast_to<MemberExpression>().Member.Name;
15            }
16            else
17            {
18                control.DataField = func.Body.downcast_to<UnaryExpression>().Method.Name;
19            }
20        }
21    }
22}