【问题标题】:DevExpress DataGridDevExpress 数据网格
【发布时间】:2016-10-04 11:13:00
【问题描述】:

我想用文件路径中包含的所有文件的选定属性填充 DevExpress DataGrid 这是我目前拥有的(“Name.”是一个占位符)

private void grList_CustomUnboundColumnData(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs e)
    {

        DirectoryInfo source = new DirectoryInfo(path);

        switch (e.Column.FieldName)
        {
            case "Name":
                e.Value = source.GetFiles(Name.ToString());
            break;
            case "FullName":
                e.Value = source.GetFiles(Name.ToString());
                break;
            case "Extention":
                e.Value = source.GetFiles(Name.ToString());
                break;
            case "LastAccessTime":
                e.Value = source.GetFiles(Name.ToString());
                break;
            case "LastWriteTime":
                e.Value = source.GetFiles(Name.ToString());
                break;
        }
    }

【问题讨论】:

  • 你的问题太宽泛了。您是否不确定如何在 DataGrid 中呈现内容?或者您不知道如何访问文件的属性?如果是前者,请查阅 DevExpress DataGrid 的文档。如果是后者,我建议您参考 FileInfo msdn.microsoft.com/en-us/library/… 的 MSDN 文档 一般建议:不要问太宽泛的问题,总是说明您首先尝试了什么,什么没有奏效.
  • @Squiggle 谢谢。我的问题目前是两者。该事件应将数据填充到 DataGrid 中,但此问题的最大部分是从 DirectoryInfo 中读取 Name、FullName、Extention、LastAccessTime 和 LastWriteTime。我在标准 DataGridView 上使用了dataGridView1.DataSource = new DirectoryInfo(path).GetFiles(),它返回所有可能的属性,不幸的是,对于这个解决方案,我需要使用 DevExpress 工具
  • 请减少这个问题,只解决一个问题。重要的是,请检查 StackOverflow 以了解针对其中每一个的现有解决方案。在您的问题中,请提供有关您已经尝试过的更多信息。

标签: c# devexpress


【解决方案1】:

为每个可见且未绑定类型的单元格触发 CustomUnboundColumData。这意味着如果您有 5 个未绑定的列和 100 个文件,则每次重绘网格时您的调用将被调用 500 次。

为什么不使用数据源方法?例如,您可以使用如下代码填充它

var d = new DirectoryInfo("c:\\");
var files = d.GetFiles("*.*").Select(x =>  new
    {
        x.Name,
        x.FullName,
        x.Extension,
        x.LastAccessTime,
        x.LastWriteTime
    }).ToList();
gridControl.DataSource = files;

我用的是动态数据,你也可以用一个类。您需要在网格中做的就是将 Columns 设置为相应的字段名并绑定它们。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多