#region using System; using System.Data; using System.Windows.Forms; using CSFrameworkV5.Common; #endregion namespace CSFrameworkV5.Library.CommonClass { /// /// frmBaseDataForm类中的SetEditorBindingValue方法。 /// public class EditorBinding { /// /// 给输入控件绑定的数据源赋值 /// /// 输入控件 /// 值 public static void SetEditorBindingValue(Control bindingControl, object value) { SetEditorBindingValue(bindingControl, value, false); } /// /// 给输入控件绑定的数据源赋值. /// /// 输入控件 /// 值 /// 是否给控件的EditValue属性赋值 public static void SetEditorBindingValue(Control bindingControl, object value, bool setEditorValue) { try { object temp = null; if (value != DBNull.Value) temp = value; if (bindingControl.DataBindings.Count > 0) { var dataSource = bindingControl.DataBindings[0].DataSource; var field = bindingControl.DataBindings[0].BindingMemberInfo .BindingField; if (dataSource is DataTable) //数据源 (dataSource as DataTable).Rows[0][field] = value; //给数据源对应的字段赋值 else DataConverter.SetValueOfObject(dataSource, field, value); } if (setEditorValue) DataConverter.SetValueOfObject(bindingControl, "EditValue", value); bindingControl.Refresh(); } catch { } //这里不用显示异常信息. } } }