uqj*_*qji 1 c# linq datagridview winforms
下面的代码将选定单元格的所有行索引放入列表框中。效果很好,但看起来很麻烦。
我想知道为什么注释循环不起作用。
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
listBox1.Items.Clear();
DataGridView dgv = (DataGridView)sender;
List<int> indices = new List<int>() { };
foreach (DataGridViewCell cell in dgv.SelectedCells)
{
indices.Add(cell.RowIndex);
}
foreach (int rowindex in indices.Distinct())
{
listBox1.Items.Add(rowindex);
}
//The following loop attempts to do the same, but wont work.
//foreach (int rowindex in dgv.SelectedCells.AsQueryable().Select(x => x.RowIndex).Distinct())
//{
// listBox1.Items.Add(rowindex);
//}
}
Run Code Online (Sandbox Code Playgroud)
尝试将 SelectedCells 转换为 an IEnumarable<DataGridVewCell>,它应该可以工作。
dgv.SelectedCells.Cast<DataGridViewCell>().Select(x => x.RowIndex).Distinct()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
761 次 |
| 最近记录: |