我正在使用 aDataGridView
来跟踪 a List<myObject>
。为了填充它,我使用了这个 foreach 循环:
foreach (myObject object in myList)
{
if (object.Status == Status.Available)
{
myDataGridView.Rows.Add(object.Name, object.Status.ToString());
}
}
然后我使用一个事件为所选行中的对象创建一个新表单:
void myDataGridView_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
var index = myList[myDataGridView.CurrentRow.Index];
myForm form = new myForm(index);
}
所以这工作得很好,直到列表中项目的状态发生变化:
myList[10].Status = Status.Unavailable;
现在myDataGridView
更新时,我无法再使用行索引为超过 10 的任何行打开正确的表单。我不知道该怎么做。
即使索引不再匹配,谁能告诉我如何打开正确的表格?
编辑:myList
在游戏中拥有角色,有些可以租用,有些则不能。我myDataGridView
只需要填充状态为Available
.