2

我有以下问题。使用 DevExpress 我想设置一个 XtraGrid 绑定到一个列表。

因此我拿了一个 BindingList

private BindingList<string> aBindingList = new BindingList<string>();

后面的列表填充了 Linq 查询(计算用户条目,然后将不同的结果显示为网格以供进一步处理)。由于我无法将查询的结果直接放入绑定列表中,因此

if (null != aStringList) aBindingList = new BindingList<string>(aStringList);

而现在问题出现了。我想使用 BindingList 作为 XtraGrid 的数据源,并使用正确的标题名称。

gridControlXtraGrid.DataSource = aBindingList ;

这个显示行,但使用丑陋的标题“列”。

DevExpress.XtraGrid.Views.Base.ColumnView aColumnView = gridControlXtraGrid.MainView as DevExpress.XtraGrid.Views.Base.ColumnView;
aColumnView.Columns[0].FieldName = "My Header";

设置标题,但不再显示行。

gridControlXtraGrid.DataSource = aBindingList ;
DevExpress.XtraGrid.Views.Base.ColumnView aColumnView = gridControlXtraGrid.MainView as DevExpress.XtraGrid.Views.Base.ColumnView;
aColumnView.Columns[0].FieldName = "My Header";
gridViewExcludableProperties.PopulateColumns();

最后再次显示数据行,但不再显示标题。

所以我要么可以设置列标题,要么查看行。

那么如何同时设置两者呢?

4

1 回答 1

3

好的,如果其他人正在搜索这个:

aColumnView.Columns[0].Caption 

必须使用,而不是 aColumnView.Columns[0].FieldName

gridView.Rows[0].HeaderCell.Value = "一些值"; 措辞中的普通网格似乎更清晰......

于 2012-12-06T08:41:19.637 回答