/// <summary> /// Десериализует XML файл в коллекцию ObservableCollection<OS>. Возвращает значение, указывающее на успешность выполнения. /// </summary> /// <param name="filePath"></param> /// <returns></returns> public static bool OpenXml(string filePath) { try { // Передаем в конструктор тип класса. var opener = new XmlSerializer(typeof(ObservableCollection <OS>)); // Десериализация. using (var fs = new FileStream(filePath, FileMode.Open)) { ScanList.Clear(); ScanList = (ObservableCollection <OS>)opener.Deserialize(fs); ForWorks.viewSource.Source = ScanList; // Подписка на события изменения базы данных ObservableCollection. ScanList.CollectionChanged += MainWindow.SelfRef.ChangeCollection; MainWindow.SelfRef.SetFilters(); } // Установить открытый файл как текущий. ForWorks.currentWorkFile = filePath; // Установка переменной состояния изменений документа в ложь. ForWorks.checkEdit = false; // Установить счетчик строк в зависимости от наличия элементов в читаемом файле. RowNumCounter = ScanList.Count > 0 ? ScanList.Last().NumRow + 1 : 1; return(true); } catch { return(false); } }
private void delall() { DJScanCompletList.Clear(); ScanList.Clear(); pictureBoxTopDisplay.Image = null; if (delAllIcon != null) { delAllIcon.Invoke(); } }