C# 如何指定列表中的列以在DataSource GridView中显示?C

C# 如何指定列表中的列以在DataSource GridView中显示?C,c#,gridview,datagridview,datagrid,devexpress,C#,Gridview,Datagridview,Datagrid,Devexpress,我有一个DataGridView和一个列表作为DataSorce,但我只想显示选定的列 我有这样的东西。。。仅举个例子 class Order{ public int IdOrder; public string Product; public double Price; public int quantity; } List<Order> orders = new List<Order>(); myDataGrid.DataSo

我有一个DataGridView和一个列表作为DataSorce,但我只想显示选定的列

我有这样的东西。。。仅举个例子

 class Order{
    public int IdOrder;
    public string Product;
    public double Price;
    public int quantity;
 }

 List<Order> orders = new List<Order>();
 myDataGrid.DataSource = orders;
注意:我使用的其他devexpress组件和xPO frameworkit是相同的
谢谢。

您应该禁用datagridview的AutoGeneratedColumns属性,使用与不想显示的属性相同的列名手动创建列,然后将数据源绑定到该列。

您应该禁用datagridview的AutoGeneratedColumns属性,使用与不想显示的属性相同的列名手动创建列,然后将数据源绑定到该列。

对于每个要隐藏的列,可以执行类似操作:

myDataGrid.Columns[0].Visible = false;

您可以对要隐藏的每一列执行以下操作:

myDataGrid.Columns[0].Visible = false;

设置数据源并填充列后,可以遍历生成的列并隐藏/删除其中的一些列:

foreach (var column in gridView1.Columns.OfType<DevExpress.XtraGrid.Columns.GridColumn>())
{
    if (column.FieldName == "MemberToBeHidden")
    {
        // Just hide it by default, user can still choose to show it later
        column.Visible = false;

        // Or completely remove from the grid
        gridView1.Columns.Remove(column);
    }
}

设置数据源并填充列后,可以遍历生成的列并隐藏/删除其中的一些列:

foreach (var column in gridView1.Columns.OfType<DevExpress.XtraGrid.Columns.GridColumn>())
{
    if (column.FieldName == "MemberToBeHidden")
    {
        // Just hide it by default, user can still choose to show it later
        column.Visible = false;

        // Or completely remove from the grid
        gridView1.Columns.Remove(column);
    }
}

DevExpress.xpo与System.ComponentModel。。xpo上不存在[DisplayNameName]和[Browsablefalse]。但是你的第一个答案非常有用。Thank.DevExpress.xpo与System.ComponentModel。。xpo上不存在[DisplayNameName]和[Browsablefalse]。但是你的第一个答案非常有用。谢谢。简单高效。!萨克斯杰克。!简单高效。!萨克斯杰克。!