コード例 #1
0
        void createCourseCommand(object obj)
        {
            UIClass uiClass = obj as UIClass;

            var currentCourses = uiClass.Courses.Select(sc =>
            {
                return(new UICourse()
                {
                    ID = sc.CourseID,
                    Name = sc.Course
                });
            })?.ToList();

            // 获取所有课程
            var cpCase    = CommonDataManager.GetCPCase(base.LocalID);
            var uiCourses = cpCase.Courses?.Select(s =>
            {
                return(new UICourse()
                {
                    ID = s.ID,
                    Name = s.Name
                });
            })?.ToList();

            ChooseCourseWindow chooseWindow = new ChooseCourseWindow(currentCourses, uiCourses);

            chooseWindow.Closed += (s, arg) =>
            {
                if (chooseWindow.DialogResult.Value)
                {
                    chooseWindow.Courses.ForEach(c =>
                    {
                        var has = uiClass.Courses.Any(uc => uc.Course.Equals(c.Name));
                        if (!has)
                        {
                            var classCourse = new Models.Administrative.UIClassCourse
                            {
                                ClassID   = uiClass.ID,
                                ClassName = uiClass.Name,
                                CourseID  = c.ID,
                                Course    = c.Name,
                            };

                            this.createClassHours(classCourse);
                            uiClass.Courses.Add(classCourse);
                            uiClass.RaiseLessons();
                        }
                    });

                    this.RaisePropertyChanged(() => ShowUniform);
                }
            };
            chooseWindow.ShowDialog();
        }
コード例 #2
0
        void uniformCreateCourseCommand()
        {
            // 获取所有课程
            var cpCase    = CommonDataManager.GetCPCase(base.LocalID);
            var uiCourses = cpCase.Courses?.Select(s =>
            {
                return(new UICourse()
                {
                    ID = s.ID,
                    Name = s.Name
                });
            })?.ToList();

            ChooseCourseWindow chooseWindow = new ChooseCourseWindow(new List <UICourse>(), uiCourses);

            chooseWindow.Closed += (s, arg) =>
            {
                if (chooseWindow.DialogResult.Value)
                {
                    chooseWindow.Courses.ForEach(c =>
                    {
                        foreach (var cc in this.Classes)
                        {
                            var has = cc.Courses.Any(uc => uc.Course.Equals(c.Name));
                            if (!has)
                            {
                                var classCourse = new Models.Administrative.UIClassCourse
                                {
                                    ClassID   = cc.ID,
                                    ClassName = cc.Name,
                                    CourseID  = c.ID,
                                    Course    = c.Name,
                                };
                                this.createClassHours(classCourse);
                                cc.Courses.Add(classCourse);
                            }
                        }
                    });
                    this.RaisePropertyChanged(() => ShowUniform);
                }
            };
            chooseWindow.ShowDialog();
        }
コード例 #3
0
        public void Initilize()
        {
            var cp = CommonDataManager.GetCPCase(base.LocalID);

            if (cp == null)
            {
                return;
            }

            this.Classes = cp.Classes.Select(c =>
            {
                var model = new UIClass()
                {
                    ID   = c.ID,
                    Name = c.Name,
                };

                c.Settings?.ForEach(s =>
                {
                    var classCourse = new Models.Administrative.UIClassCourse()
                    {
                        ClassID   = c.ID,
                        ClassName = c.Name,
                        Lessons   = s.Lessons,
                        CourseID  = s.CourseID,
                    };
                    model.Courses.Add(classCourse);
                });

                return(model);
            })?.ToList();

            this.Classes.ForEach(c =>
            {
                c.PropertyChanged += C_PropertyChanged;
            });
        }