コード例 #1
0
        /// <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);
            }
        }
コード例 #2
0
        private void delall()
        {
            DJScanCompletList.Clear();
            ScanList.Clear();

            pictureBoxTopDisplay.Image = null;
            if (delAllIcon != null)
            {
                delAllIcon.Invoke();
            }
        }