public void SetBounds(int x, int y, int width, int height, BoundsSpecified specified) {
// Fill in the values that were not specified
if ((specified & BoundsSpecified.X) == 0)
x = Left;
if ((specified & BoundsSpecified.Y) == 0)
y = Top;
if ((specified & BoundsSpecified.Width) == 0)
width = Width;
if ((specified & BoundsSpecified.Height) == 0)
height = Height;
SetBoundsInternal (x, y, width, height, specified);
}