public DataGridCellBuilder(string propertyName, Func <TItem, TProperty> selectorFun, Action <TItem, object?> setFunc, DataGridRowBuilder <TItem> dataGridRowBuilder) { PropertyName = propertyName; DataGridRowBuilder = dataGridRowBuilder; SelectorFunc = selectorFun; SetFunc = setFunc; ConvertToProperty = ConvertToPropertyValue; }
public override DataGridRowBuilder <TItem> ElseIf(Func <TItem, bool> condition) { var builder = new DataGridRowBuilderConditional <TItem>(LastFlow, condition); Alternative = builder; return(builder); }
public DataGridColBuilder(Expression <Func <TItem, TProperty> > selector, DataGridRowBuilder <TItem> dataGridRowBuilder) : base(selector, dataGridRowBuilder) { if (dataGridRowBuilder is DataGridBuilder <TItem> gridBuilder) { GridBuilder = gridBuilder; } else { throw new Exception("Cannot create col builder any builder except the main grid builder"); } }
public DataGridCellBuilder(Expression <Func <TItem, TProperty> > selector, DataGridRowBuilder <TItem> dataGridRowBuilder) { DataGridRowBuilder = dataGridRowBuilder; SelectorFunc = selector.Compile(); if (selector.Body.NodeType == ExpressionType.MemberAccess) { var memberExpression = (MemberExpression)selector.Body; if (memberExpression.Expression.NodeType == ExpressionType.Parameter) { var member = memberExpression.Member; if (member is PropertyInfo memberProperty) { SetFunc = memberProperty.SetValue; } else if (member is FieldInfo memberField) { SetFunc = memberField.SetValue; } else { throw new Exception("Unable to determine member access :" + selector.ToString()); } PropertyName = member.Name; } else { throw new Exception("Unable to determine member access :" + selector.ToString()); } } else { throw new Exception("Unable to determine member access :" + selector.ToString()); } ConvertToProperty = ConvertToPropertyValue; }
public override DataGridRowBuilder <TItem> Else() { Alternative = new DataGridRowBuilder <TItem>(LastFlow.DataGridBuilder, LastFlow); return(Alternative); }
public DataGridRowBuilderConditional(DataGridRowBuilder <TItem> lastFlow, Func <TItem, bool> condition) : base(lastFlow.DataGridBuilder, lastFlow) { Condition = condition; }
public DataGridRowBuilder(DataGridBuilder <TItem>?dataGridBuilder, DataGridRowBuilder <TItem>?lastFlow) { DataGridBuilder = dataGridBuilder ?? (DataGridBuilder <TItem>) this; LastFlow = lastFlow ?? this; }
public DataGridColBuilder(string propertyName, Func <TItem, TProperty> selectorFun, Action <TItem, object?> setFunc, DataGridRowBuilder <TItem> dataGridRowBuilder) : base(propertyName, selectorFun, setFunc, dataGridRowBuilder) { if (dataGridRowBuilder is DataGridBuilder <TItem> gridBuilder) { GridBuilder = gridBuilder; } else { throw new Exception("Cannot create col builder any builder except the main grid builder"); } }