I think there is an error in the ADVGrid.
In the TAdvStringGrid.Search function, line 36913, c := AnsiUpperCase(Copy(c,1,Length(s)));
Doesn't that have to be c := AnsiUpperCase(Copy(c,1,Length(c))); mean?
For example, if the grid contains image1 and you search for image, you get the line from image1.
best regards
Thoren