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}