ObservableCollection - , , LINQ
int index =
_collection.Select((x,i) => object.Equals(x, mydesiredProcessModel)? i + 1 : -1)
.Where(x => x != -1).FirstOrDefault();
ProcessModel pm = _collection.ElementAt(index);
1, .
ProcessModel pm = _collection[_collection.IndexOf(mydesiredProcessModel) + 1];
ProcessModel pm = _collection.ElementAt(_collection.IndexOf(mydesiredProcessModel) + 1);
EDIT for Not Null
int i = _collection.IndexOf(ProcessItem) + 1;
var x;
if (i <= _collection.Count - 1)
x = _collection[i];
else
MessageBox.Show("Item does not exist");
source
share