Ultragrid infragistics excel导出导出UltraDropDownList ValueMember而不是DisplayMember

时间:2015-01-22 11:35:20

标签: c# excel infragistics ultragrid

我使用Infragistics.Documents.Excel将UltraGrid导出到Excel。网格包含各种列,其中一列是绑定到数据源的DropDownList类型。但是当它导出到Excel时,它会显示精确的列,但是excel字段中的数据是ValueMember,例如1,2,3,4,而不是DisplayMember,例如' Book'。有没有人知道解决这个问题的方法?

谢谢,

1 个答案:

答案 0 :(得分:1)

您可以处理UltraGridExcelExporter组件的ExportedStarted事件,其中创建了UltraGrid布局的副本,获取您知道的ValueList以及每个项目集显示成员转换为字符串的数据值。

private void ultraGridExcelExporter1_ExportStarted(object sender, Infragistics.Win.UltraWinGrid.ExcelExport.ExportStartedEventArgs e)
{
        ValueList valueList = e.Layout.Bands[0].Columns[0].ValueList as ValueList;

        foreach (var item in valueList.ValueListItems)
        {
            item.DisplayText = item.DataValue.ToString();
        }
}