C#_generating random Points inside a custom class

Hello,

I have created a class, I do not understand what is wrong in my code when I use random class inside the custom class i have created. I only get one random value. eg. I want to have 100 random points in give range but its giving me 100 points only at one random location. However when call random class from outside my custom class it seems to work fine.
Please help me to correct my code!
Thanks!

    List<Point3d> pts = new List<Point3d>();
    rnd = new Random(0);
    stars = new Star[count];

    for(int i = 0; i < stars.Length;i++)
    {
      stars[i] = new Star(rnd.Next(0, width), rnd.Next(0, height));

    }
    if(play)
    {
      foreach(Star myStr in stars)
      {
        myStr.Update();
        pts.Add(myStr.Display());
      }
    }
    A = pts;

  // <Custom additional code> 
  Star[] stars;
  Random rnd;

  class Star
  {
    public int x;
    public int y;
    public int z;
    //public Random rnd = new Random();

    public Star(int width, int height)
    {

      //x = 0
      //y = rnd.Next(0,height+1);
      //z = rnd.Next(0,width+1);
      x = 0;
      y = height;
      z = width;
    }

    public void Update()
    {

    }

    public Point3d Display()
    {
      return new Point3d(x, y, z);
    }
  }
  // </Custom additional code>

01

03

If you create a Random instance without a seed, the processor clock is used instead, resulting in a different random sequence each time the Random class is instantiated (except when you construct two instances very close together in time). If you provide a seed, then you get the same random sequence each time.