public static Tuple <ValueChangedRich <DomainT>, ValueChangedSimple <ViewT> > BindReadWriteAndInitialize <WidgetT, ViewT, DomainT>( this IReadWriteValueView <WidgetT, ViewT> view, IReadWriteValue <DomainT> domain, Func <DomainT, ViewT> convertFromDomain, Func <ViewT, DomainT> convertToDomain) { var readHandler = view.BindRead(domain, convertFromDomain); var writeHandler = view.BindWrite(domain, convertToDomain); readHandler(domain, domain.Value, domain.Value, domain.Errors, false); Logger.Debug(typeof(ValueViewExtensions), "BindReadWriteAndInitialize current value = {0} errors={1}", domain.Value, domain.Errors.PrettyToString()); return(new Tuple <ValueChangedRich <DomainT>, ValueChangedSimple <ViewT> >(readHandler, writeHandler)); }
public static ValueChangedSimple <T> BindWrite <WidgetT, T>( this IReadWriteValueView <WidgetT, T> view, IReadWriteValue <T> domain) { return(view.BindWrite(domain, x => x)); }