public ApplicationViewModel(IDialogService dialogService, IApplicationDataService applicationDataService)
        {
            // сервисы
            DialogService = dialogService;
            DataService   = applicationDataService;


            // загрузка данных
            Airlines = DataService.UploadAirlinesFromDataFolder(AirlinesFileName);

            // если данных нет - они генерируются
            if (Airlines == null || Airlines.Count < 1)
            {
                Airlines = new ObservableCollection <Airline>();
                for (int i = 0; i < 5; i++)
                {
                    Airlines.Add(Airline.Generate(Utils.Generators.GetRand(5, 20)));
                }

                DataService.SaveAirlinesToDataFolder(AirlinesFileName, Airlines);
            }

            // выбранная авиакомпания
            SelectedAirline = Airlines[0];

            // загрузка данных в словари с названиями полей
            SortedFields   = new Dictionary <string, string>(Airplane.FilteredFields);
            FilteredFields = new Dictionary <string, string>(Airplane.FilteredFields);

            // удаление полей, по которым не может идти фильтрация
            FilteredFields.Remove("Name");
            FilteredFields.Remove("RegNumber");

            // добавление варианта "Не сортировать"
            SortedFields.Add("NoSorting", "Не сортировать");
            SelectedSortField   = "NoSorting";
            SelectedFilterField = FilteredFields.Keys.FirstOrDefault();

            // заполнение списка представлений коллекций самолетов
            FillAirplanesViewsCollection();

            // светлая тема по умолчанию
            IsLightThemeEnabled = true;
        }