예제 #1
0
 public ActionResult EditChildren(ChildrenInfo children)
 {
     if (ModelState.IsValid)
     {
         db.Entry(children).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("DataChildren"));
     }
     UserAccountIDDropDownList(children.userId);
     return(View(children));
 }
예제 #2
0
 public ActionResult ChildrenInfo(ChildrenInfo ci)
 {
     if (ModelState.IsValid)
     {
         db.ChildrenInfoes.Add(ci);
         db.SaveChanges();
         return(RedirectToAction("Confirmation"));
     }
     UserAccountIDDropDownList();
     return(View());
 }
예제 #3
0
        internal void EnumChildren(string text, PythonStackFrame pythonStackFrame, Action <PythonEvaluationResult[]> completion)
        {
            DebugWriteCommand("Enum Children");
            _socket.Send(GetChildrenCommandBytes);
            SendString(_socket, text);
            int executeId = _ids.Allocate();

            lock (_pendingChildEnums) {
                _socket.Send(BitConverter.GetBytes(pythonStackFrame.Thread.Id));
                _socket.Send(BitConverter.GetBytes(pythonStackFrame.FrameId));
                _socket.Send(BitConverter.GetBytes(executeId));
                _pendingChildEnums[executeId] = new ChildrenInfo(completion, text, pythonStackFrame);
            }
        }
예제 #4
0
        public ActionResult EditChildren(int id)
        {
            UserAccountIDDropDownList();
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ChildrenInfo children = db.ChildrenInfoes.Find(id);

            if (children == null)
            {
                return(HttpNotFound());
            }
            return(View(children));
        }
예제 #5
0
        public ActionResult DetailsChildren(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            ChildrenInfo children = db.ChildrenInfoes.Find(id);

            if (children == null)
            {
                return(HttpNotFound());
            }
            return(View(children));
        }
예제 #6
0
        public ActionResult DeleteChildren(int?id)
        {
            UserAccountIDDropDownList();
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ChildrenInfo children = db.ChildrenInfoes.Find(id);

            if (children == null)
            {
                return(HttpNotFound());
            }
            if (children != null)
            {
                db.ChildrenInfoes.Remove(children);
                db.SaveChanges();
                return(RedirectToAction("DataChildren"));
            }
            return(View(children));
        }
        private void SaveScore()
        {
            float score = 0;

            timer.Stop();
            if (App.Model == TestModel.Test)
            {
                if (ExerciseCriteria == 0)
                {
                    Messenger.Default.Send("达标标准不能为0");
                    return;
                }
                score = Convert.ToSingle((Convert.ToInt32(RightFontCount) - (Convert.ToInt32(ErrorFontCount) * ExerciseAbatementCount))) / (ExerciseCriteria) * 60;

                Messenger.Default.Send("您汉字全文录入得分为: " + score.ToString("F2"));
                //Loaded();
                //Messenger.Default.Send(
                //            new WindowMessage
                //            {
                //                WindowName = "SkillTestSelection",
                //                Operation = WindowOperation.Show,
                //            });
            }
            else
            {
                string sql        = @"UPDATE
                        TY_SKILLEXAMGRADE
                    SET                        
                        F_ANSWER_CS = ?,
                        F_SCORE_CS = ?,
                        F_CORRECT_CS=?
                    WHERE
                        F_KEY = ?";
                string f_h_answer = new TextRange(InputDoc.ContentStart, InputDoc.ContentEnd).Text.Replace("\r\n", "").Trim();

                //权重
                float weight = Convert.ToSingle(ExamHandle.TryGetSingleData(@"SELECT F_WEIGHT_CS FROM TY_SKILLEXAM WHERE F_KEY =? ", Exam.SE_F_KEY)) / 100;
                //全文本录入汉字录入成绩=(录入正确字数/达标标准)*100*权重*总分;
                score = Convert.ToSingle((Convert.ToInt32(RightFontCount) - (Convert.ToInt32(ErrorFontCount) * Exam.CS_F_ABATEMENTCOUNT))) / (Exam.CS_F_CRITERIA) * weight * Exam.SE_F_TOTALSCORE;

                string[] parms = new string[] { f_h_answer, score.ToString("F2"), RightFontCount.ToString(), Exam.SCORE_F_KEY };
                if (ExamHandle.TryExecute(sql, parms))
                {
                    Messenger.Default.Send("保存打字成绩成功!");
                }
                else
                {
                    Messenger.Default.Send("保存打字成绩失败!");
                }
                string openwindowName = string.Empty;
                if (ChildrenInfo != null)
                {
                    Control ct = new Control();
                    if (ChildrenInfo.Count > 0)
                    {
                        switch (ChildrenInfo[0])
                        {
                        case "单字录入":     //单字录入
                            openwindowName = "TypeWritingMainPage";
                            ct             = new ExamSys.Client.View.TypeWritingMainPage(Exam, ChildrenInfo);
                            break;

                        case "行文本录入":     //行文本录入
                            openwindowName = "TypeSlitWritingPage";
                            ct             = new ExamSys.Client.View.TypeSlitWritingPage(Exam, ChildrenInfo);
                            break;

                        case "数字录入":     //数字录入
                            openwindowName = "TypeDigitalWritingPage";
                            ct             = new ExamSys.Client.View.TypeDigitalWritingPage(Exam, ChildrenInfo);
                            break;

                        case "多券别点钞":    //多券别点钞
                            openwindowName = "TypeCountCashPage";
                            ct             = new ExamSys.Client.View.TypeCountCashPage(Exam, ChildrenInfo);
                            break;

                        case "单券别点钞":    //单券别点钞
                            openwindowName = "TypeCountCashSinglePage";
                            ct             = new ExamSys.Client.View.TypeCountCashSinglePage(Exam, ChildrenInfo);
                            break;
                        }

                        ChildrenInfo.RemoveAt(0);
                    }
                    else if (ChildrenInfo.Count == 0)
                    {
                        ct = new ExamSys.Client.View.SkillExamReport(Exam);
                    }
                    (App.MainWindow.DataContext as ExamMainWindowViewModel).Content = ct;
                    //Messenger.Default.Send(new WindowMessage
                    //{
                    //    WindowName = openwindowName,
                    //    Operation = WindowOperation.Show,
                    //    Param = new object[] { Exam, ChildrenInfo }
                    //});
                }
            }
            Close();
        }
예제 #8
0
        internal void EnumChildren(string text, PythonStackFrame pythonStackFrame, Action<PythonEvaluationResult[]> completion) {
            DebugWriteCommand("Enum Children");
            int executeId = _ids.Allocate();
            lock (_pendingChildEnums) {
                _pendingChildEnums[executeId] = new ChildrenInfo(completion, text, pythonStackFrame);
            }

            lock (_streamLock) {
                _stream.Write(GetChildrenCommandBytes);
                _stream.WriteString(text);
                _stream.WriteInt64(pythonStackFrame.Thread.Id);
                _stream.WriteInt32(pythonStackFrame.FrameId);
                _stream.WriteInt32(executeId);
                _stream.WriteInt32((int)pythonStackFrame.Kind);
            }
        }
        private void SaveScore()
        {
            string examineeAnswer = string.Empty;

            foreach (var item in Article)
            {
                examineeAnswer += item.StrInput + "|";
                if (item.StrOri.Equals(item.StrInput))
                {
                    item.IsAllRight = true;
                }
            }
            int rightAmount = Article.Where(x => x.IsAllRight == true).Count();
            int totalAmount = Article.Count;

            if (totalAmount == 0)
            {
                Messenger.Default.Send("所选文本为空!");
                return;
            }
            // 权重
            float weight = Convert.ToSingle(ExamHandle.TryGetSingleData(@"SELECT F_WEIGHT_CR FROM TY_SKILLEXAM WHERE F_KEY =? ", Exam.SE_F_KEY)) / 100;
            //分条录入成绩=正确条数/总条数*100*权重*总分
            float score = Convert.ToSingle(rightAmount) / totalAmount * Exam.SE_F_TOTALSCORE * weight;

            timer.Stop();
            if (App.Model == TestModel.Exam)
            {
                string   sql   = @"UPDATE
                        TY_SKILLEXAMGRADE
                    SET                        
                        F_ANSWER_CR = ?,
                        F_SCORE_CR = ?,
                        F_CORRECT_CR=?
                    WHERE
                        F_KEY = ?";
                string[] parms = new string[] { examineeAnswer, score.ToString("F2"), rightAmount.ToString(), Exam.SCORE_F_KEY };
                if (ExamHandle.TryExecute(sql, parms))
                {
                    Messenger.Default.Send("保存打字成绩成功!");
                }
                else
                {
                    Messenger.Default.Send("保存打字成绩失败!");
                }
                string openwindowName = string.Empty;
                if (ChildrenInfo != null)
                {
                    Control ct = new Control();
                    if (ChildrenInfo.Count > 0)
                    {
                        switch (ChildrenInfo[0])
                        {
                        case "单字录入": //单字录入
                            openwindowName = "TypeWritingMainPage";
                            ct             = new ExamSys.Client.View.TypeWritingMainPage(Exam, ChildrenInfo);
                            break;

                        case "行文本录入": //行文本录入
                            openwindowName = "TypeSlitWritingPage";
                            ct             = new ExamSys.Client.View.TypeSlitWritingPage(Exam, ChildrenInfo);
                            break;

                        case "数字录入": //数字录入
                            openwindowName = "TypeDigitalWritingPage";
                            ct             = new ExamSys.Client.View.TypeDigitalWritingPage(Exam, ChildrenInfo);
                            break;

                        case "多券别点钞"://多券别点钞
                            openwindowName = "TypeCountCashPage";
                            ct             = new ExamSys.Client.View.TypeCountCashPage(Exam, ChildrenInfo);
                            break;

                        case "单券别点钞"://单券别点钞
                            openwindowName = "TypeCountCashSinglePage";
                            ct             = new ExamSys.Client.View.TypeCountCashSinglePage(Exam, ChildrenInfo);
                            break;
                        }
                        ChildrenInfo.RemoveAt(0);
                    }
                    else if (ChildrenInfo.Count == 0)
                    {
                        ct = new ExamSys.Client.View.SkillExamReport(Exam);
                    }
                    (App.MainWindow.DataContext as ExamMainWindowViewModel).Content = ct;
                }
            }
            else
            {
                Messenger.Default.Send("您汉字分条录入得分为: " + score.ToString("F2"));

                Messenger.Default.Send(
                    new WindowMessage
                {
                    WindowName = "SkillTestSelection",
                    Operation  = WindowOperation.Show,
                });
            }


            Close();
        }
예제 #10
0
파일: JProcess.cs 프로젝트: borota/JTVS
        internal void EnumChildren(string text, JStackFrame jStackFrame, bool childIsEnumerate, Action<JEvaluationResult[]> completion)
        {
            DebugWriteCommand("Enum Children");
            int executeId = _ids.Allocate();
            lock (_pendingChildEnums) {
                _pendingChildEnums[executeId] = new ChildrenInfo(completion, text, jStackFrame);
            }

            lock (_socketLock) {
                _stream.Write(GetChildrenCommandBytes);
                _stream.WriteString(text);
                _stream.WriteInt64(jStackFrame.Thread.Id);
                _stream.WriteInt32(jStackFrame.FrameId);
                _stream.WriteInt32(executeId);
                _stream.WriteInt32((int)jStackFrame.Kind);
                _stream.WriteInt32(childIsEnumerate ? 1 : 0);
            }
        }
예제 #11
0
        public static bool ResearchNode_Draw_Prefix(object __instance, Rect visibleRect, bool forceDetailedMode = false)
        {
            //Reflected objects
            Rect rect = (Rect)RectInfo.GetValue(__instance);
            ResearchProjectDef Research = (ResearchProjectDef)ResearchInfo.GetValue(__instance);
            bool available = (bool)AvailableInfo.GetValue(__instance);
            bool completed = Research.IsFinished; //simplified

            //

            if (!(bool)IsVisibleInfo.Invoke(__instance, new object[] { visibleRect }))
            {
                HighlightedProxy(__instance, false);
                return(false);
            }
            bool detailedMode = forceDetailedMode || (float)ZoomLevelInfo.GetValue(InstanceInfo.GetValue(__instance)) < DetailedModeZoomLevelCutoff;
            bool mouseOver    = Mouse.IsOver(rect);
            bool highlighted  = HighlightedProxy(__instance);

            if (Event.current.type == EventType.Repaint)
            {
                //researches that are completed or could be started immediately, and that have the required building(s) available
                GUI.color = mouseOver ? BrightColor : (Color)ColorInfo.GetValue(__instance);
                if (mouseOver || highlighted)
                {
                    GUI.DrawTexture(rect, ResearchTree_Assets.ButtonActive);
                }
                else
                {
                    GUI.DrawTexture(rect, ResearchTree_Assets.Button);
                }

                //grey out center to create a progress bar effect, completely greying out research not started.
                if (available)
                {
                    var progressBarRect = rect.ContractedBy(3f);
                    GUI.color             = ResearchTree_Assets.ColorAvailable[Research.techLevel];
                    progressBarRect.xMin += Research.ProgressPercent * progressBarRect.width;
                    GUI.DrawTexture(progressBarRect, BaseContent.WhiteTex);
                }
                HighlightedProxy(__instance, interest == Research);

                //draw the research label
                if (!completed && !available)
                {
                    GUI.color = Color.grey;
                }
                else
                {
                    GUI.color = Color.white;
                }

                if (detailedMode)
                {
                    Text.Anchor   = TextAnchor.UpperLeft;
                    Text.WordWrap = false;
                    Text.Font     = (bool)largeLabelInfo.GetValue(__instance) ? GameFont.Tiny : GameFont.Small;
                    Widgets.Label((Rect)LabelRectInfo.GetValue(__instance), Research.LabelCap);
                }
                else
                {
                    Text.Anchor   = TextAnchor.MiddleCenter;
                    Text.WordWrap = false;
                    Text.Font     = GameFont.Medium;
                    Widgets.Label(rect, Research.LabelCap);
                }

                //draw research cost and icon
                if (detailedMode)
                {
                    Text.Anchor = TextAnchor.UpperRight;
                    Text.Font   = Research.CostApparent > 1000000 ? GameFont.Tiny : GameFont.Small;
                    Widgets.Label((Rect)CostLabelRectInfo.GetValue(__instance), Research.CostApparent.ToStringByStyle(ToStringStyle.Integer));
                    GUI.DrawTexture((Rect)CostIconRectInfo.GetValue(__instance), !completed && !available ? ResearchTree_Assets.Lock : ResearchTree_Assets.ResearchIcon,
                                    ScaleMode.ScaleToFit);
                }

                Text.WordWrap = true;

                //attach description and further info to a tooltip
                string root = HarmonyPatches.ResearchPal ? "ResearchPal" : "Fluffy.ResearchTree";
                TooltipHandler.TipRegion(rect, new Func <string>(() => (string)GetResearchTooltipStringInfo.Invoke(__instance, new object[] { })), Research.GetHashCode());
                if (!BuildingPresentProxy(Research))
                {
                    string languageKey = root + ".MissingFacilities";
                    TooltipHandler.TipRegion(rect, languageKey.Translate(string.Join(", ", MissingFacilities(Research).Select(td => td.LabelCap).ToArray())));
                }
                else if (!TechprintAvailable(Research))
                {
                    string languageKey = root + ".MissingTechprints";
                    TooltipHandler.TipRegion(rect, languageKey.Translate(Research.TechprintsApplied, Research.techprintCount));
                }

                //draw unlock icons
                if (detailedMode)
                {
                    Rect IconsRect = (Rect)IconsRectInfo.GetValue(__instance);
                    var  unlocks   = GetUnlockDefsAndDescs(Research);
                    for (var i = 0; i < unlocks.Count; i++)
                    {
                        var iconRect = new Rect(
                            IconsRect.xMax - (i + 1) * (IconSize.x + 4f),
                            IconsRect.yMin + (IconsRect.height - IconSize.y) / 2f,
                            IconSize.x,
                            IconSize.y);

                        if (iconRect.xMin - IconSize.x < IconsRect.xMin &&
                            i + 1 < unlocks.Count)
                        {
                            //stop the loop if we're about to overflow and have 2 or more unlocks yet to print.
                            iconRect.x = IconsRect.x + 4f;
                            GUI.DrawTexture(iconRect, ResearchTree_Assets.MoreIcon, ScaleMode.ScaleToFit);
                            var tip = string.Join("\n", unlocks.GetRange(i, unlocks.Count - i).Select(p => p.Second).ToArray());
                            TooltipHandler.TipRegion(iconRect, tip);
                            //new TipSignal(tip, Settings.TipID, TooltipPriority.Pawn) );
                            break;
                        }

                        //draw icon
                        unlocks[i].First.DrawColouredIcon(iconRect);

                        //tooltip
                        TooltipHandler.TipRegion(iconRect, unlocks[i].Second);
                    }
                }

                if (mouseOver)
                {
                    if (interest != null && interest != Research)
                    {
                        DeInterest();
                    }

                    //highlight prerequisites if research available
                    if (available)
                    {
                        HighlightedProxy(__instance, true);
                        foreach (var prerequisite in (IEnumerable <object>)GetMissingRequiredRecursiveInfo.Invoke(__instance, new object[] { }))
                        {
                            HighlightedProxy(Convert.ChangeType(prerequisite, ResearchNodeType()), true);
                        }
                    }
                    //highlight children if completed
                    else if (completed)
                    {
                        foreach (var child in (IEnumerable <object>)ChildrenInfo.GetValue(__instance))
                        {
                            HighlightedProxy(Convert.ChangeType(child, ResearchNodeType()), true);
                        }
                    }
                }
            }

            //CUSTOM: a bunch of things on top
            Research.DrawExtras(rect, mouseOver || highlighted);

            if (Widgets.ButtonInvisible(rect))
            {
                //CUSTOM: replaced queue operations for assignment menu
                if (Event.current.button == 0)
                {
                    Research.SelectMenu(completed);
                }
                if (DebugSettings.godMode && Prefs.DevMode && Event.current.button == 1 && !Research.IsFinished)
                {
                    Find.ResearchManager.FinishProject(Research);
                    Research.WipeAssignments();
                }
            }

            return(false);
        }
예제 #12
0
        private void SubmitTest()
        {
            //张数正确的数量
            int PageAmountRight_FaceNum = 0;
            //金额正确的数量
            int TotalAmountRight_FaceNum = 0;
            //标准答案
            List <string> listDStandaranser = Exam.CCR_F_STANDARDANSWER.Split(new string[] { "#" }, StringSplitOptions.RemoveEmptyEntries).ToList <string>();
            //标准答案(转为特定字典格式方便使用)
            Dictionary <string, KeyValuePair <string, string> > dic = new Dictionary <string, KeyValuePair <string, string> >();

            foreach (var item in listDStandaranser)
            {
                dic.Add(item.Split('|')[0], new KeyValuePair <string, string>(item.Split('|')[1], item.Split('|')[2]));
            }
            //累加张数正确的点钞券数量
            if (OneStandardAnswer1.ZS.ToString() == dic["100"].Key)
            {
                PageAmountRight_FaceNum += OneStandardAnswer1.ZS;
            }
            if (OneStandardAnswer2.ZS.ToString() == dic["50"].Key)
            {
                PageAmountRight_FaceNum += OneStandardAnswer2.ZS;
            }
            if (OneStandardAnswer3.ZS.ToString() == dic["20"].Key)
            {
                PageAmountRight_FaceNum += OneStandardAnswer3.ZS;
            }
            if (OneStandardAnswer4.ZS.ToString() == dic["10"].Key)
            {
                PageAmountRight_FaceNum += OneStandardAnswer4.ZS;
            }
            if (OneStandardAnswer5.ZS.ToString() == dic["5"].Key)
            {
                PageAmountRight_FaceNum += OneStandardAnswer5.ZS;
            }
            if (OneStandardAnswer6.ZS.ToString() == dic["1"].Key)
            {
                PageAmountRight_FaceNum += OneStandardAnswer6.ZS;
            }
            //累加金额正确的点钞券数量
            if (OneStandardAnswer1.JE.ToString() == dic["100"].Value)
            {
                TotalAmountRight_FaceNum += OneStandardAnswer1.ZS;
            }
            if (OneStandardAnswer2.JE.ToString() == dic["50"].Value)
            {
                TotalAmountRight_FaceNum += OneStandardAnswer2.ZS;
            }
            if (OneStandardAnswer3.JE.ToString() == dic["20"].Value)
            {
                TotalAmountRight_FaceNum += OneStandardAnswer3.ZS;
            }
            if (OneStandardAnswer4.JE.ToString() == dic["10"].Value)
            {
                TotalAmountRight_FaceNum += OneStandardAnswer4.ZS;
            }
            if (OneStandardAnswer5.JE.ToString() == dic["5"].Value)
            {
                TotalAmountRight_FaceNum += OneStandardAnswer5.ZS;
            }
            if (OneStandardAnswer6.JE.ToString() == dic["1"].Value)
            {
                TotalAmountRight_FaceNum += OneStandardAnswer6.ZS;
            }
            //考生答案
            var tempStr = "100" + "|" + OneStandardAnswer1.ZS.ToString() + "|" + OneStandardAnswer1.JE.ToString() + "#"
                          + "50" + "|" + OneStandardAnswer2.ZS.ToString() + "|" + OneStandardAnswer2.JE.ToString() + "#"
                          + "20" + "|" + OneStandardAnswer3.ZS.ToString() + "|" + OneStandardAnswer3.JE.ToString() + "#"
                          + "10" + "|" + OneStandardAnswer4.ZS.ToString() + "|" + OneStandardAnswer4.JE.ToString() + "#"
                          + "5" + "|" + OneStandardAnswer5.ZS.ToString() + "|" + OneStandardAnswer5.JE.ToString() + "#"
                          + "1" + "|" + OneStandardAnswer6.ZS.ToString() + "|" + OneStandardAnswer6.JE.ToString();
            //for (int i = 0; i < StantardAnswerInfos.Count; i++)
            //{
            //    tempStr += StantardAnswerInfos[i].PM + "|" + StantardAnswerInfos[i].ZS.ToString() + "|" + StantardAnswerInfos[i].JE.ToString() + "#";
            //    if (listDStandaranser.Any(x => x.Split('|')[0] == StantardAnswerInfos[i].PM.ToString() && x.Split('|')[1] == StantardAnswerInfos[i].ZS.ToString()))
            //    {
            //        PageAmountRight_FaceNum += StantardAnswerInfos[i].ZS;
            //    }
            //    if (listDStandaranser.Any(x => x.Split('|')[0] == StantardAnswerInfos[i].PM.ToString() && x.Split('|')[2] == StantardAnswerInfos[i].JE.ToString()))
            //    {
            //        TotalAmountRight_FaceNum += StantardAnswerInfos[i].ZS;
            //    }
            //}

            //总票面
            int totalAmout = 0;

            foreach (var item in listDStandaranser.ToList <string>())
            {
                totalAmout += Convert.ToInt32(item.Split('|')[1]);
            }
            // 权重
            float weight = Convert.ToSingle(ExamHandle.TryGetSingleData(@"SELECT F_WEIGHT_CCR FROM TY_SKILLEXAM WHERE F_KEY =? ", Exam.SE_F_KEY)) / 100;
            //得分成绩=(正确张数的票面/总票面*张数得分比例+正确金额的票面/总票面*金额得分比例)*权重*总分;
            var score = ((Convert.ToSingle(PageAmountRight_FaceNum) / totalAmout) * Exam.CCR_F_PAGEWEIGHT / 100 + (Convert.ToSingle(TotalAmountRight_FaceNum) / totalAmout) * Exam.CCR_F_MONEYWEIGHT / 100) * weight * Exam.SE_F_TOTALSCORE;

            if (App.Model == TestModel.Exam)
            {
                string   sql   = @"UPDATE
                                TY_SKILLEXAMGRADE
                            SET 
                                F_SCORE_CCR = ?,
                                F_ANSWER_CCR = ?
                            WHERE
                                F_KEY = ?";
                string[] parms = new string[] { score.ToString("F2"), tempStr, Exam.SCORE_F_KEY };
                if (ExamHandle.TryExecute(sql, parms))
                {
                    Messenger.Default.Send("保存点钞成绩成功!");
                }
                else
                {
                    Messenger.Default.Send("保存点钞成绩失败!");
                }
                string openwindowName = string.Empty;
                if (ChildrenInfo != null)
                {
                    Control ct = new Control();
                    if (ChildrenInfo.Count > 0)
                    {
                        switch (ChildrenInfo[0])
                        {
                        case "单字录入":     //单字录入
                            openwindowName = "TypeWritingMainPage";
                            ct             = new ExamSys.Client.View.TypeWritingMainPage(Exam, ChildrenInfo);
                            break;

                        case "行文本录入":     //行文本录入
                            openwindowName = "TypeSlitWritingPage";
                            ct             = new ExamSys.Client.View.TypeSlitWritingPage(Exam, ChildrenInfo);
                            break;

                        case "数字录入":     //数字录入
                            openwindowName = "TypeDigitalWritingPage";
                            ct             = new ExamSys.Client.View.TypeDigitalWritingPage(Exam, ChildrenInfo);
                            break;

                        case "多券别点钞":    //多券别点钞
                            openwindowName = "TypeCountCashPage";
                            ct             = new ExamSys.Client.View.TypeCountCashPage(Exam, ChildrenInfo);
                            break;

                        case "单券别点钞":    //单券别点钞
                            openwindowName = "TypeCountCashSinglePage";
                            ct             = new ExamSys.Client.View.TypeCountCashSinglePage(Exam, ChildrenInfo);
                            break;
                        }
                        ChildrenInfo.RemoveAt(0);
                    }
                    else if (ChildrenInfo.Count == 0)
                    {
                        ct = new ExamSys.Client.View.SkillExamReport(Exam);
                    }
                    (App.MainWindow.DataContext as ExamMainWindowViewModel).Content = ct;
                }
            }
            else
            {
            }
            Close();
        }