/// <summary> /// Open file with shape /// </summary> /// <param name="obj"></param> private void OpenFile(object obj) { OpenFileDialog openFileDialog = new OpenFileDialog(); openFileDialog.DefaultExt = ".xml"; openFileDialog.Filter = "XML documents (.xml)|*.xml"; if (openFileDialog.ShowDialog() == true) { string fileName = openFileDialog.FileName; WindowTitle = fileName; TitleChanged?.Invoke(WindowTitle); List <Shape> polylines = new List <Shape>(); XmlSerializer serializer = new XmlSerializer(typeof(List <Shape>)); using (XmlReader reader = XmlReader.Create(fileName)) { polylines = (List <Shape>)serializer.Deserialize(reader); } Polylines.Clear(); for (int i = 0; i < polylines.Count; ++i) { Polylines.Add(new Polyline() { Name = String.Format("Polyline_{0}", i + 1), Stroke = new SolidColorBrush(polylines[i].ShapeColor), Points = polylines[i].Points }); } OnPropertyChanged("Polylines"); } }
/// <summary> /// Clear window /// </summary> /// <param name="obj"></param> private void ClearWindow(object obj) { Polylines.Clear(); OnPropertyChanged("Polylines"); }