C# 如何对对象变量使用foreach?

C# 如何对对象变量使用foreach?,c#,list,datagridview,foreach,indexing,C#,List,Datagridview,Foreach,Indexing,我有一个包含多个变量的对象列表。我将对象显示在DataGridView表上,并且我希望能够更改表上的特定行,以对应于它所反映的对象发生的任何更改。以下是我想要的一个粗略示例: foreach (object in objectList where object.specificVariable = value) { dataGridTable.Rows[object.Index].Cells[3].Value = value; } 基本上,我只想更改已经

我有一个包含多个变量的对象列表。我将对象显示在DataGridView表上,并且我希望能够更改表上的特定行,以对应于它所反映的对象发生的任何更改。以下是我想要的一个粗略示例:

    foreach (object in objectList where object.specificVariable = value)
    {
        dataGridTable.Rows[object.Index].Cells[3].Value = value;
    }

基本上,我只想更改已经更改的内容,而不是在整个列表中循环,浪费机器时间和内存。效率是关键。对象中的每个变量都会在时间上显示,每当其中一个变量发生更改时,我希望只获取包含更改的对象的索引,忽略所有其他变量。

我已经阅读了您的问题好几次,但仍然不知道您要做什么。你能澄清一下吗?很难解释,我有一个用户类对象列表和一个反映它的datagridview表(每行用户数)。用户有一个状态,如果程序中的状态发生变化,我希望它反映在表中。我希望找到每个具有特定状态的用户的索引,然后更改表条目以反映更改。用户列表和表共享相同的索引。因此,如果我可以根据状态(user.status)找到user的索引,我就可以在相同的索引中更改。我不希望遍历整个用户列表,它可能会变得非常大。@Ozma64如果是这样(用户索引=表索引),那么您可以只处理“脏”用户(其状态已被更改的用户)的索引列表。那就浏览一下这个列表。当然,这只有在你能检测到什么时候,哪个用户被改变的情况下才会起作用。是的,这就是问题所在,弄清楚哪些用户被更改了……我试图列出所有具有特定状态的用户的索引,希望能有办法只查询这些用户的列表,而不是遍历整个列表