1

我正在尝试将page类列表绑定到datagridview.

class Page : INotifyPropertyChanged
{
    public List<Tuple<DateTime, String>> Lines { get; set; }
    public Color c { get; set; }
    public String filePath { get; set; }

//rest of class code...
}
//on the 'Form1' class
BindingList<Page> pages = new BindingList<Page>();

我希望其中datagridview的一行代表列表中的一行

List<Tuple<DateTime, String>> Lines

一列用于 ,一列用于DateTime对应string

每一行都应与其所属color的行相协调。page

我正在尝试绑定它,因为我希望通过源文件的更新实时更新 GUI。

我的实现已经循环了好几天,任何帮助/建议将不胜感激。谢谢!

编辑:一些示例数据:

20-Apr-11 08:36:44.312   Start       I *** C:\Cromos 3.0\toolset\Ntbin\Release\crm_gui_gtm.exe on BENJAMIN-PC - release - cromos: build 2780, Gui version: 400, File version: 80 ***
20-Apr-11 08:36:44.312   symbol element total: 9
4

1 回答 1

2

对于查看此问题的任何人,我通过更改我的数据结构来解决问题。我为单行创建了一个类,如下所示:

    class Line : INotifyPropertyChanged
{
    public Color _c;
    public DateTime _dateTime;
    public String _comment;
    public event PropertyChangedEventHandler PropertyChanged;
}

然后实现 aBindingList来存储所有行并按照 Vikram 链接的示例进行操作。

        BindingList<Line> all = new BindingList<Line>();

另外,请确保您将这一行包含在表单初始化程序中,而不是像我一样的方法!

            dataGridView1.DataSource = all;
于 2012-10-05T10:42:32.190 回答