Beispiel #1
0
        /// <summary>
        /// 静态方法 模拟MESSAGEBOX.Show方法
        /// </summary>
        /// <param name="title">标题</param>
        /// <param name="msg">消息</param>
        /// <param name="confireMessage">右边的按钮的文字</param>
        /// <param name="firstButtonVisible">左边按钮是否显示</param>
        /// <returns></returns>
        public static bool?Show(string title, string msg, string confireMessage = "跳过", bool firstButtonVisible = true, string firstButtonMessage = "重做")
        {
            var msgBox = new UMessageBox();

            msgBox.Title           = title;
            msgBox.Message         = msg;
            msgBox.ConfireMessage  = confireMessage;
            msgBox.FirstVisible    = firstButtonVisible;
            msgBox.FirstButtonText = firstButtonMessage;
            return(msgBox.ShowDialog());
        }
        private bool reDoMark(TestingWorkerSender status)
        {
            bool?ret = null;

            Application.Current.Dispatcher.Invoke(() =>
            {
                ret = UMessageBox.Show("提示", "试验已经结束,\t\n是否重做标记的试验", "结束试验,不重做", firstButtonVisible: true, firstButtonMessage: "立即重做标记试验");
            });
            if (ret != null && !(bool)ret)
            {
                status.CurrentItemIndex = 0;
                return(true);
            }
            return(false);
        }
 private void showMassege(TestingWorkerSender status)
 {
     Application.Current.Dispatcher.Invoke(() =>
     {
         MeasurementItemStruct preFunction = null;
         if (status.CurrentItemIndex >= 1)
         {
             preFunction = status.MeasurementItems[status.CurrentItemIndex - 1];
         }
         var temp = status.MeasurementItems[status.CurrentItemIndex];
         if (temp.Function == MeasurementFunction.Description && !string.IsNullOrEmpty(temp.needSwitchTapNum))
         {
             var ret = UMessageBox.Show("提示", "该步骤需要人工完成\t\n" + "请将有载分接开关切换到(分接" + temp.needSwitchTapNum + ")位置", "确定", false);
             if ((bool)ret)
             {
                 var confireRet = UMessageBox.Show("提示", "确认已经切换至" + temp.needSwitchTapNum + "位置。\t\n立即进入试验?", "确定", false);
                 if ((bool)confireRet)
                 {
                     status.CurrentItemIndex++;
                 }
             }
         }
         //if (temp.Function == MeasurementFunction.DCResistance && temp.TapLabel != null && !status.MeasurementItems[status.CurrentItemIndex].completed == true)
         //{
         //    if (preFunction != null && preFunction.Function == MeasurementFunction.Description && !string.IsNullOrEmpty(preFunction.needSwitchTapNum))
         //    {
         //        //如果前一个是已经弹出提示的  就不需要在此弹出提示
         //    }
         //    else
         //    {
         //        var ret = UMessageBox.Show("提示", "该步骤需要人工完成\t\n" + "请将有载分接开关切换到(分接" + temp.needSwitchTapNum + ")位置", "确定", false);
         //        if ((bool)ret)
         //        {
         //            UMessageBox.Show("提示", "确认已经切换至" + temp.needSwitchTapNum + "位置。\t\n立即进入试验?", "确定", false);
         //        }
         //    }
         //}
         if (status.MeasurementItems[status.CurrentItemIndex].failed && status.MeasurementItems[status.CurrentItemIndex].completed == true)
         {
             var ret = UMessageBox.Show("警告", "试验出错\t\n" + status.StatusText, "跳过");
             if (!(bool)ret)
             {
                 //重做
                 status.MeasurementItems[status.CurrentItemIndex].failed    = false;
                 status.MeasurementItems[status.CurrentItemIndex].completed = false;
                 status.MeasurementItems[status.CurrentItemIndex].state     = 0;
                 status.MeasurementItems[status.CurrentItemIndex].redo      = true;
                 if (status.CurrentItemIndex > 0)
                 {
                     status.CurrentItemIndex--;
                 }
                 TestFunction.TZ3310.CommunicationQuery(0x00);
             }
             else
             {
                 status.MeasurementItems[status.CurrentItemIndex].failed    = true;
                 status.MeasurementItems[status.CurrentItemIndex].completed = true;
                 if (status.MeasurementItems.Length != status.CurrentItemIndex + 1)
                 {
                     status.CurrentItemIndex++;
                 }
                 TestFunction.TZ3310.CommunicationQuery(0x00);
             }
         }
     });
 }