protected void CancleTask(string device) { var viewModel = new UpdateWithTaskStateViewModel() { EquipmentDevice = device, TaskStatus = EnumTaskState.BeingCancelled }; var currentTaskState = baseAction.CheckTaskState(device); if (currentTaskState != EnumTaskState.Cancle && currentTaskState != EnumTaskState.Complete) { baseAction._tagTaskState(viewModel); var returnData = baseAction.SingleSetTaskState(device); viewModel.TaskStatus = returnData; baseAction._tagTaskState(viewModel); //if (returnData != EnumTaskState.Cancle) //{ ///viewModel.TaskStatus = returnData; ///baseAction._tagTaskState(viewModel); //} } }
public void UpdateUIByTaskState(UpdateWithTaskStateViewModel viewModel) { var currentViewModel = viewModel; var color = Color.CadetBlue; var messageStr = string.Empty; switch (currentViewModel.TaskStatus) { case EnumTaskState.BeingCancelled: color = Color.CadetBlue; messageStr = "任务正在取消中"; break; case EnumTaskState.Cancle: color = Color.Red; messageStr = "任务取消完毕"; break; case EnumTaskState.Complete: color = Color.Green; messageStr = "任务执行完毕"; break; case EnumTaskState.Start: color = Color.CadetBlue; messageStr = "任务正在执行中"; break; case EnumTaskState.Error: color = Color.Red; messageStr = "任务执行出错"; break; } var currentControl = GetControlByName(this.flowLayoutPanel3, string.Format(partialControlName, currentViewModel.EquipmentDevice)); if (null != currentControl) { var btn = currentControl.Controls[0]; baseAction.SetContentWithCurrentThread(btn, messageStr, (control, str) => { var text = control.Text; if (!string.IsNullOrEmpty(text)) { text = text.Split(' ')[0]; } text = string.Format("{0} {1}", text, string.IsNullOrEmpty(viewModel.ShowMessage) ? messageStr : viewModel.ShowMessage); control.Text = text; control.BackColor = color; }); } }