Your property setters actually need to
do something. Computers are not magical, they only do what you tell them to. In this case, you need to tell the ellipses to resize themselves.
Try something like
class TwoCircles : UserControl {
Ellipse e1, e2;
public double A { { get { return e1.Width; } set { e1.Width = e1.Height = value; } }
public double B { { get { return e2.Width; } set { e2.Width = e2.Height = value; } }
public TwoCircles(double a, double b){
e1=new Ellipse{Width=a,Height=a};
e2=new Ellipse{Width=b,Height=b};
}
}
(I removed the a1 and b1 fields because all they were doing was storing parameters already available through the ellipses.)