public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value == null)
            {
                return(null);
            }

            string school = (string)value;

            if (TimeTableData.Faculties.Count != 0)
            {
                TimeTableData.Faculties.Clear();
            }

            var table = new TimeTableData();

            table.GetFaculties(school);

            if (table.LoadResult == Result.Failed)
            {
                MessageBox.Show("Проблемы с соединением");
            }

            return(TimeTableData.Faculties.Select(x => x.Name).ToList());
        }
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            int index = (int)value;

            if (index == -1)
            {
                return(null);
            }

            if (TimeTableData.Schools.Count == 0)
            {
                var table = new TimeTableData();
                table.GetUniversities();
            }

            switch (index)
            {
            case 1:
                return(TimeTableData.GetNames(City.Arkhagelsk));

            case 2:
                return(TimeTableData.GetNames(City.Severodvinsk));

            default:
                return(TimeTableData.Schools.Select(x => x.Name).ToList());
            }
        }
        //private void Load()
        //{
        //    //XML data


        //    if (string.IsNullOrEmpty(tableLink))
        //    {
        //        var doc = XDocument.Load("Settings.xml");
        //        tableLink = @"http://ruz.narfu.ru/?timetable&group=" + doc.Element("Settings").Element("Table").Attribute("Link").Value;
        //    }

        //    var table = new TimeTableData();


        //    var data = table.GetTimeTable(tableLink);

        //    if (data == null)
        //        return;
        //    int i = 0, j = 0;

        //    var x = data.Weeks[0];


        //    foreach (var y in x.Days)
        //    {
        //        if (y.Pairs.Count == 0)
        //        {
        //            i++;
        //            continue;
        //        }
        //        if (y.Pairs[0].Num != "1")
        //        {
        //            var pair = new Pair();
        //            pair.Margin = new Thickness(200 * i + 20, 150 * j + 20, 0, 0);
        //            j++;
        //            Pairs.Add(pair);
        //        }

        //        foreach (var z in y.Pairs)
        //        {
        //            z.Margin = new Thickness(200 * i + 20, 150 * j + 20, 0, 0);
        //            j++;
        //            Pairs.Add(z);
        //        }
        //        i++;
        //        j = 0;
        //    }
        //}

        private void Load()
        {
            if (string.IsNullOrEmpty(tableLink))
            {
                var doc = XDocument.Load("Settings.xml");
                tableLink = @"http://ruz.narfu.ru/?timetable&group=" + doc.Element("Settings").Element("Table").Attribute("Link").Value;
            }
            var days = Enumerable.Range(0, 1).Select(day => new Headers[6]).ToArray();

            var table = new TimeTableData();
            var data  = table.GetTimeTable(tableLink);

            TableInfo = $"{data.GroupNum} - {data.GroupName} ({data.LastChange})";

            if (data == null)
            {
                return;
            }

            var x = data.Weeks[0];

            int maxcount = 0;

            foreach (var y in x.Days)
            {
                if (y.Pairs.Count() > maxcount)
                {
                    maxcount = y.Pairs.Count;
                }
            }

            var tableArray = Enumerable.Range(0, maxcount).Select(pair => new Pair[6]).ToArray();

            int currDay  = 0;
            int currPair = 0;

            foreach (var y in x.Days)
            {
                var day = DateTime.Parse(y.Date);

                days[0][currDay] = new Headers {
                    DayInfo = $"{day.ToString("d")}, {day.DayOfWeek.ToString()}"
                };

                foreach (var z in y.Pairs)
                {
                    tableArray[currPair][currDay] = z;
                    currPair++;
                }
                currPair = 0;
                currDay++;
            }
            Pairs = tableArray;
            Days  = days;
        }