0

我在 NET 中搜索,但没有发现任何对我的案例有用的东西。我正在使用 DevExpress/GridControl ...我不知道如何在 GridControl 中加载两列的 .txt(在 txt ==> '/t' 上拆分)

4

1 回答 1

1

DevExpress 推荐使用BindingList<T>在运行时创建绑定数据。然后,您将其分配给该GridControl.DataSource属性。 请参阅此处了解更多信息。

您需要创建一个中间类(或结构)来保存文本文件中的一行数据:

public class TextFileData
{
    public TextFileData(string columnA, string columnB)
    {
        ColumnA = columnA;
        ColumnB = columnB;
    }

    public string ColumnA { get; set; }
    public string ColumnB { get; set; }
}

然后实现一个打开文件的方法,依次读取该行并将其转换为 TextFileData 并将其添加到您的BindingList<TextFileData>实例中。就像是:

public static class TextFileReader
{
    public static BindingList<TextFileData> Read(string path)
    {
        var list = new BindingList<TextFileData>();

        using (StreamReader sr = new StreamReader(path))
        {
            while (sr.Peek() >=0)
            {
                String line = sr.ReadLine();
                string[] columns = line.Split('\t')

                list.Add(new TextFileData(columns[0], columns[1]));
            }
        }

        return list;
    }
}
于 2013-09-29T08:42:23.570 回答