I've solved this problem! I use this code:
sub remove_item {
my ($st)= @_;
my $it = $list_store->get_iter_first;
while ($it) {
if ($list_store->iter_is_valid($it) && $list_store->get($it, 3) eq $st) {
my $tmp = $it; # temporary iter for row delete
print "Good\n";
$it = $list_store->iter_next($it);
$list_store->remove($tmp);
} else {
print "Bad\n";
$it = $list_store->iter_next($it);
}
}
} # ---------- end of subroutine remove_item ----------