Не совсем понятно, что вы пытаетесь сделать. Я подозреваю Вы хотите что-то вроде:
var drawObjects = from array in matrix
from item in array
where item.Rectangle.Contains(e.Location)
select item;
... но, возможно, нет. Вы не показали, что вы пытаетесь сделать с результатом запроса, или для чего нужен this[column, row]
.
Вы почти наверняка не хотите использовать емкость списка в первую очередь - более вероятно, что вы заинтересованы в Count
, но используете список как IEnumerable<T>
вероятно лучше в любом случае.
РЕДАКТИРОВАТЬ: Хорошо, поэтому вышеприведенный запрос находит все drawObjects
, где прямоугольник содержит указанное местоположение. Вы почти наверняка хотите использовать что-то вроде First
, FirstOrDefault
, Single
или SingleOrDefault
. Например:
var drawObject = (from array in matrix
from item in array
where item.Rectangle.Contains(e.Location)
select item)
.SingleOrDefault();
if (drawObject != null) // We found one
{
...
}