我试图按索引对列表中的项目进行简单修改。
让我们在我的foreach循环中说:
foreach (User usr in userList)
{
if (uname.Text == usr.uname)
如果它与我输入的内容相匹配,我该如何更新该特定索引中的整个项目?谢谢!
答案 0 :(得分:1)
如果要为特定索引处的项目分配新实例,请使用for
循环:
for(int i = 0; i<userList.Count; i++)
{
if (uname.Text == userList[i].uname)
{
userList[i] = /* new instance */
}
}
答案 1 :(得分:0)
假设userList中的每个对象都包含(uname,密码,地址,电话,电子邮件),代码应如下所示:
foreach (User usr in userList)
{
if (uname.Text == usr.uname)
{
uname.Email= newEmail; // where newEmail is local variable with new value for password
uname.Phone = newPhone;
// ... changing other properties, just don't change Password property
}
}
基本上,当您找到要更改的对象时,可以直接访问其公共属性和方法。