public Layer(Layer layer)
{
if (layer == null) throw new ArgumentNullException();
this.Bounds = new Rectangle2D(layer.Bounds);
this.Caption = layer.Caption;
this.Description = layer.Description;
this.Name = layer.Name;
this.Queryable = layer.Queryable;
this.SubLayers = new LayerCollection();
}