hi, now i've tried to create the MyData class. However, i'm stuck on how to change the codes in the form to do the serialization. below is some of the codes: MyData Class: [XmlRoot("MyData")] public class MyData { public MyData() { } public MyData(ArrayList shape, ArrayList color, ArrayList coord, ArrayList size, ArrayList gpd) { this.ShapeTypeList = shape; this.ColorList = color; this.CoordList = coord; this.SizeList = size; this.arrS = gpd; } public enum TypeOfShape { Square, Rect, Parallelogram, Trapezoid, Diamond, Triangle, RightAngleTriangle,Circle,Oval,Hexagon,Pentagon,None } // XmlSerializer serializ() // { // XmlSerializer s = new XmlSerializer( typeof(ArrayList),new Type[] {typeof(Coordinate),typeof(ColorL),typeof(SizeL), typeof(ArrSave)} ); // return s; // } XmlSerializer s = new XmlSerializer( typeof(ArrayList),new Type[] {typeof(Coordinate),typeof(ColorL),typeof(SizeL), typeof(ArrSave)} ); ArrayList ShapeTypeList=new ArrayList (); ArrayList ColorList=new ArrayList (); ArrayList CoordList=new ArrayList(); ArrayList SizeList = new ArrayList(); ArrayList arrS = new ArrayList(); ArrayList PathList =new ArrayList(); //[XmlArray("CoordinateData")] [XmlElement("Coordinate",typeof(Coordinate))] public ArrayList coordList { get{return CoordList;} set{CoordList=value;} } public class Coordinate { public Coordinate(){} public Point[] point { get{return point;} set{point=value;} } }..................... MovePosition Function in Form: private void MovePosition(int position,int BshapeNo,int sztotal,int szOrd) { if((TypeOfShape)ShapeTypeList[shapeNo]!=TypeOfShape.Circle&&(TypeOfShape)ShapeTypeList[shapeNo]!=TypeOfShape.Oval) { alDrawingObjects.Insert(position, new Polygon((Color)ColorList[shapeNo], (Point[])CoordList[shapeNo], 5,(GraphicsPath)PathList[shapeNo] )); } else if ((TypeOfShape)ShapeTypeList[shapeNo]==TypeOfShape.Circle||(TypeOfShape)ShapeTypeList[shapeNo]==TypeOfShape.Oval) { alDrawingObjects.Insert(position, new Ellipse((Color)ColorList[shapeNo],(Point[]) CoordList[shapeNo], (Size)SizeList[sizeOrder], 5) ); SizeList.Insert(sztotal,(Size)SizeList[sizeOrder]); SizeList.RemoveAt(szOrd); } CoordList.Insert(position, (Point[])CoordList[shapeNo]); ColorList.Insert(position,(Color)ColorList[shapeNo]); ShapeTypeList.Insert(position,(TypeOf