private void ParseXmlFile() { var openFileDialog = new OpenFileDialog() { Filter = "XML files (*.xml)|*.xml", InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), }; if (openFileDialog.ShowDialog() == true) { var data = XmlParser <UkrainianCadastralExchangeFile> .ParseFile(openFileDialog.FileName); PraseInfoLandsPlot praseInfoLandsPlot = new PraseInfoLandsPlot(data); LandPlots = new ObservableCollection <LandPlot>(praseInfoLandsPlot.GetLandPlots()); CanvasChildren.Clear(); ///////////////////// //CanvasChildren.AddRange(praseInfoLandsPlot.Polilines.Values.ToList()); //AddMouseHandlr(); ////////////////// Не працює коректно var tr = LandPlots.Select(e => e.Polygon).ToList(); foreach (var item in LandPlots) { item.Polygon.MouseUp += (s, e) => { SelecLandPlot = item; foreach (var item2 in LandPlots) { item2.Polygon.Fill = Brushes.White; } item.Polygon.Fill = Brushes.Gray; }; } CanvasChildren.AddRange(tr); } }