/// <summary> /// 初始化 <see cref="MultiDataBinding"/> 新实例。 /// </summary> /// <param name="propertyName">绑定的属性名称。</param> /// <param name="value">绑定源。</param> /// <param name="converter">转换器。</param> /// <param name="convertParameter">转换参数。</param> /// <param name="culture">转换区域。</param> public MultiDataBinding(string propertyName, MultiBindableValue value, IMultiValueConverter converter, object convertParameter, CultureInfo culture) : base(propertyName, value, "Value") { _types = value.ValueTypes; Converter = converter; ConvertParameter = convertParameter; Culture = culture; }
/// <summary> /// 绑定多个指定的值到属性,并使用指定的转换器。 /// </summary> /// <param name="value">绑定的值。</param> /// <param name="converter">更新时,值转换器。</param> /// <param name="convertParameter">转换参数。</param> /// <param name="culture">区域信息。</param> /// <returns>返回已绑定的 <see cref="Forms.Binding"/> 实例。</returns> /// <exception cref="ArgumentException">给定数据为null时引发。</exception> /// <exception cref="ArgumentNullException">控件属性是已绑定到数据或<see cref="Forms.Binding"/> 未指定的有效列时引发。</exception> public IBindableProperty Binding(MultiBindableValue value, IMultiValueConverter converter, object convertParameter = null, CultureInfo culture = null) { BindingCore(value, i => converter.Convert((object[])i, bindingProperty.PropertyType, converter, culture), i => converter.ConvertBack(i, value.ValueTypes, convertParameter, culture)); return(this); }
/// <summary> /// 初始化 <see cref="MultiDataBinding"/> 新实例。 /// </summary> /// <param name="propertyName">绑定的属性名称。</param> /// <param name="value">绑定源。</param> /// <param name="converter">转换器。</param> /// <param name="convertParameter">转换参数。</param> public MultiDataBinding(string propertyName, MultiBindableValue value, IMultiValueConverter converter, object convertParameter) : this(propertyName, value, converter, convertParameter, null) { }