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();
        }
        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();
        }