if (listofelements.Contains(valueFieldValue.ToString()))
{
listofelements[listofelements.IndexOf(valueFieldValue.ToString())] = value.ToString();
}
Or, building on Rusian L.'s suggestion, if the item you're searching for can be in the list more than once::
[Extension()]
public void ReplaceAll(List input, T search, T replace)
{
int i = 0;
do {
i = input.FindIndex(i, s => EqualityComparer.Default.Equals(s, search));
if (i > -1) {
FileSystem.input(i) = replace;
continue;
}
break;
} while (true);
}