示例#1
0
        private void groupToolStripMenuItem_Click(object sender, EventArgs e)
        {
            AddGroupForm addGroupForm = new AddGroupForm(_data);

            addGroupForm.ShowDialog();

            ElementMaker.MakeGroupsTreeView(_data, treeView_Groups, comboBox_Faculty);
        }
示例#2
0
        private void comboBox_Group_SelectedIndexChanged(object sender, EventArgs e)
        {
            flowLayoutPanel_Absents.Controls.Clear();
            string selectedGroup = comboBox_Group.SelectedItem.ToString();
            var    group         = _data.Groups.Where(t => t.Name.Equals(selectedGroup)).First();

            selectedGroupId = group.Id;

            ElementMaker.MakeSubjectsList(selectedGroupId, selectedDate, listBox_Subjects, _data);
        }
示例#3
0
        private void treeView_Groups_AfterSelect(object sender, TreeViewEventArgs e)
        {
            var groups = _data.Groups
                         .Where(t => t.Name.Equals(treeView_Groups.SelectedNode.Text));

            if (groups.Count() > 0)
            {
                ElementMaker.MakeStudentsDataGrid(groups.First().Id, dataGridView_StudentsAbsent, _data);
            }
        }
示例#4
0
        public MainForm()
        {
            studentAbsents  = new Dictionary <Student, Absent>();
            chechBoxs       = new Dictionary <string, ComboBox>();
            selectedDate    = DateTime.Now;
            selectedGroupId = -1;
            _data           = new DataContext();

            InitializeComponent();

            ElementMaker.MakeGroupsTreeView(_data, treeView_Groups, comboBox_Faculty);
        }
示例#5
0
        private Label AppDetailsLabel()
        {
            FormattedString appDetailsStrings = ElementMaker.NewFormattedString(3);
            Label           appDetails        = ViewMaker.NewLabelFormattedString(appDetailsStrings, VariablesGlobal.TEXT_SIZE_LARGE);

            appDetailsStrings.Spans[0] = ElementMaker.NewSpan(VariablesTexts.APPLICATION_NAME, VariablesGlobal.TEXT_SIZE_LARGE, FontAttributes.Bold);
            appDetailsStrings.Spans[1] = ElementMaker.NewSpan(VariablesTexts.TEXT_SPACE);
            appDetailsStrings.Spans[2] = ElementMaker.NewSpan(VariablesTexts.APPLICATION_VERSION, VariablesGlobal.TEXT_SIZE_MEDIUM, FontAttributes.None, VariablesGlobal.COLOUR_TEXT_LIGHT);
            appDetailsStrings.Spans[2].ForegroundColor = Color.FromHex(VariablesGlobal.COLOUR_TEXT_LIGHT);

            return(appDetails);
        }
示例#6
0
        private Label AppTextLabel()
        {
            FormattedString appDetailsStrings = ElementMaker.NewFormattedString(4);
            Label           appDetails        = ViewMaker.NewLabelFormattedString(appDetailsStrings, VariablesGlobal.TEXT_SIZE_MEDIUM);

            appDetailsStrings.Spans[0] = ElementMaker.NewSpan(VariablesTexts.ABOUT_CONTENT_INFO_3_4);
            appDetailsStrings.Spans[1] = ElementMaker.NewSpan(VariablesTexts.TEXT_SPACE);
            appDetailsStrings.Spans[2] = ElementMaker.NewSpan(VariablesTexts.ABOUT_CONTENT_INFO_4_4, VariablesGlobal.TEXT_SIZE_LARGE, FontAttributes.Bold);
            appDetailsStrings.Spans[2].ForegroundColor = Color.FromHex(VariablesGlobal.COLOUR_TEXT_LIGHT);
            appDetailsStrings.Spans[3] = ElementMaker.NewSpan(VariablesTexts.TEXT_PERIOD);

            return(appDetails);
        }
示例#7
0
        private void lessonToolStripMenuItem_Click(object sender, EventArgs e)
        {
            AddScheduleForm addScheduleForm = new AddScheduleForm(_data);

            addScheduleForm.ShowDialog();

            flowLayoutPanel_Absents.Controls.Clear();
            studentAbsents.Clear();
            chechBoxs.Clear();
            ElementMaker.MakeSubjectsList(selectedGroupId, selectedDate, listBox_Subjects, _data);
            if (listBox_Subjects.Items.Count > 0)
            {
                listBox_Subjects.SelectedIndex = 0;
            }
        }
示例#8
0
        private void listBox_Subjects_SelectedIndexChanged(object sender, EventArgs e)
        {
            flowLayoutPanel_Absents.Controls.Clear();
            studentAbsents.Clear();
            chechBoxs.Clear();

            int index            = listBox_Subjects.SelectedIndex;
            var selectedSchedule = _data.Schedules
                                   .Where(t => t.GroupId == selectedGroupId && t.Day.Equals(selectedDate.DayOfWeek.ToString()))
                                   .OrderBy(t => t.Number)
                                   .ToList()[index];

            var studentsList = new HashSet <Student>(_data.Students
                                                     .Where(t => t.GroupId == selectedGroupId)
                                                     .OrderBy(t => t.FullName));

            foreach (var student in studentsList)
            {
                var absents = _data.Absents
                              .Where(t => t.ScheduleId == selectedSchedule.Id &&
                                     t.StudentId == student.Id &&
                                     Comparator.Equals(t.Date, selectedDate));
                if (absents.Count() > 0)
                {
                    flowLayoutPanel_Absents.Controls.Add(ElementMaker
                                                         .CreateContainerLine(student.FullName, absents.First().Cause, chechBoxs));
                    studentAbsents.Add(student, absents.First());
                }
                else
                {
                    flowLayoutPanel_Absents.Controls.Add(ElementMaker
                                                         .CreateContainerLine(student.FullName, Absent.PRESENT, chechBoxs));
                    Absent absent = new Absent {
                        Id         = _data.Absents.Count,
                        Cause      = Absent.PRESENT,
                        Date       = selectedDate,
                        ScheduleId = selectedSchedule.Id,
                        StudentId  = student.Id
                    };
                    studentAbsents.Add(student, absent);
                    _data.Absents.Add(absent);
                }
                _data.SaveChanges(DataContext.ABSENT);
            }
        }
示例#9
0
        private void studentToolStripMenuItem_Click(object sender, EventArgs e)
        {
            AddStudentForm addStudentForm = new AddStudentForm(_data);

            addStudentForm.ShowDialog();

            ElementMaker.MakeGroupsTreeView(_data, treeView_Groups, comboBox_Faculty); flowLayoutPanel_Absents.Controls.Clear();

            flowLayoutPanel_Absents.Controls.Clear();
            studentAbsents.Clear();
            chechBoxs.Clear();

            ElementMaker.MakeSubjectsList(selectedGroupId, selectedDate, listBox_Subjects, _data);
            if (listBox_Subjects.Items.Count > 0)
            {
                listBox_Subjects.SelectedIndex = 0;
            }

            dataGridView_StudentsAbsent.Rows.Clear();
        }
示例#10
0
 private void dateTimePicker_ScheduleDate_ValueChanged(object sender, EventArgs e)
 {
     flowLayoutPanel_Absents.Controls.Clear();
     selectedDate = dateTimePicker_ScheduleDate.Value;
     ElementMaker.MakeSubjectsList(selectedGroupId, selectedDate, listBox_Subjects, _data);
 }
示例#11
0
 public MainPage()
 {
     Children.Add(ElementMaker.NewNavigationpage(new ItemsPage(new ItemsViewModel()), VariablesTexts.PAGE_NAME_ITEMS, VariablesGlobal.IMAGE_MENU));
     Children.Add(ElementMaker.NewNavigationpage(new AboutPage(new AboutViewModel()), VariablesTexts.PAGE_NAME_ABOUT, VariablesGlobal.IMAGE_INFO));
 }