Dropping a chain says "double check your front mech limit screws", before spending more money. Even if you think they are fine, tighten them up just to see if it goes away.
Presuming your mechs are tuned properly with limit stops set correctly...sounds like you've done the part replacing deduction...so you're buying new chainrings, they too are friction wear items-and safe to say when the cassette is toast they probably are too.