No. Like I said: "make your Random a static field of class B". You're still generating the values in class B. However I think the problem is that at the moment you're using a Random object for every instance of the class, which can make the generated random
numbers very similar. If you only use one single Random object (e.g. a static field) for that, the results will be much better.
Edit: like that:
class B
{
private static Random _rnd = new Random();
...
}