提问者:小点点

如何使用LINQ将单元格值从DataGridView传递到ListBox


我想把有色单元格值传递给ListBox,但遗憾的是,我不能通过使用下面的代码来做到这一点。我做错了什么?

var cellColorValue = dataGridView1.Rows.Cast<DataGridViewRow>()
                    .SelectMany(row => row.Cells.Cast<DataGridViewCell>()
                    .Where(c => c.Style.BackColor == Color.Yellow)
                    .Select(x => x.Value).ToString()
                    .ToList());


listBox1.Items.Add(cellColorValue);





共1个答案

匿名用户

因此,您试图在列表框中添加项,但您提供的是项的list。这意味着,您不能简单地调用add()方法来完成此操作。

您应该做的是,将列表CellColorValue传递到AddRange()方法中,或者使用DataSource对象来绑定值。

请执行以下操作:

listBox1.Items.AddRange(cellColorValue);

listBox1.DataSource = cellColorValue;
listBox1.DataBind(); // Call this method as well to bind the data source.