Every volume has it's own trash file, and if anything is in them, when they mount, the trash can will show it has something in it. As you've already figured out, if an external drive has something in the trash, and you unmount the drive, the trash disappears as well - but it's still on the external drive, ready to pop up again when you reconnect.
sudo rm -rf ~/.Trash/*