我有一个自定义对象的集合,其格式为List of List of T,即List of List对象。 我需要将此集合绑定到Windows窗体中的datagridview控件,并且页数应该等于外部列表中内部列表的数量。 每个页面都应该绑定到内部列表,即T列表。任何想法如何实现?
假定你的嵌套列表已经被填充了,除了DataGridView
,你的表单还有一个Previous
和Next
按钮来改变页面:你可以使用按钮来改变一个索引,它指出哪个嵌套列表将被用作DataSource
。
public List<List<MyObject>> Pages { get; set; } // Populated elsewhere... public int PageIndex { get; set; } private void ChangePage() { this.PreviousButton.Enabled = this.PageIndex > 0; this.NextButton.Enabled = this.PageIndex < this.Pages.Count - 1; this.dataGridView1.DataSource = this.Pages[this.PageIndex]; } private void PreviousButton_Click(object sender, EventArgs e) { this.PageIndex--; this.ChangePage(); } private void NextButton_Click(object sender, EventArgs e) { this.PageIndex++; this.ChangePage(); }