#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
{
} //这里不用显示异常信息.
}
}
}