XtraGrid的CustomUnboundColumnData事件的触发条件
XtraGrid的CustomUnboundColumnData是让非数据绑定的列触发事件。 以便于自行处理该列的显示数据与数据源。
一、CustomUnboundColumnData事件的触发条件,否则不触发。
1.将该列的UnboundType属性设置为bound(默认值)以外的数据类型
2.为该列设置一个窗体内全局唯一的FieldName,注意这个FieldName甚至不能出现在窗体上其它XtraGrid中。
说明:如果表格中部分Unbound列指定的FieldName不唯一,那么如果还有部分Unbound列符合上述条件,那么该部分列的CustomUnboundColumnData事件会正常触发。
二、CustomUnboundColumnData使用说明。
/// <summary>
/// 非数据绑定事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void _gridView_CustomUnboundColumnData(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs e)
{
var data = e.Row as DataInfoShow; //行数据源
if (data == null)
return;
if (e.Column == _colModelDataType) //指定列
{
if (e.IsGetData) //绑定行指定列数据时显示文本处理
{
e.Value = modelMap.ModelDataTypeName;
}
else //指定列值改变后,同步行数据源值
{
var value = e.Value as ModelDataType;
data.ModelDataType = value.ID;
data.ModelDataTypeName = value.Name;
}
}
}