The loop in backgroundWorker1_DoWork
is so fast that the Random
object generated in generateCode
is always seeded with the same value, thus producing the same values. Don't recreate the Random
object but assign one to an instance variable in the constructor of your class and only use that one.