private void toolVisual_Click(object sender, EventArgs e) { if (gridMark.SelectedRows == null) { Core.Utility.Msg("Hãy chọn dòng mà bạn muốn hiển thị bài làm trực quan"); return; } DataGridViewRow row = gridMark.SelectedRows[0]; gridMark.FirstDisplayedCell = row.Cells[0]; // tránh người dùng thay đổi khi đã vào chế độ visualizer //row.Frozen = true; FormKeyVisualize visualizer = new FormKeyVisualize(); Hashtable tag = visualizer.Tag as Hashtable; MarkRowInfo rowtag = (MarkRowInfo)row.Tag; tag.Add(FormKeyVisualize.TagKeys.Answer, (string)row.Cells["colDetail"].Value); tag.Add(FormKeyVisualize.TagKeys.Questions, _keys.questions); tag.Add(FormKeyVisualize.TagKeys.Column, -1); visualizer.rowIndex = rowtag.GridIndex; visualizer.FormClosing += new FormClosingEventHandler(visualizer_FormClosing); visualizer.MdiParent = this.MdiParent; visualizer.Top = this.Top; visualizer.Left = this.Left + this.Width; visualizer.StartPosition = FormStartPosition.Manual; visualizer.Show(); }
/// <summary> /// Chuyển kết quả interpret ra grid. /// </summary> /// <param name="discover"></param> /// <param name="index">Grid index</param> /// <param name="fileName"></param> private void gridMark_Populate(Core.Discover discover, int index, string fileName) { DataGridViewRow row = new DataGridViewRow(); row.CreateCells(gridMark, new object[] { discover.group, discover.student, discover.problem, discover.mark, Core.Utility.ClearLook(discover.answer) }); MarkRowInfo info = new MarkRowInfo(); row.Tag = info; info.FileName = fileName; info.GridIndex = index; info.root = discover.root; // Thêm info.ResultIndex = gridMark.Rows.Add(row); if ((float)row.Cells[3].Value == -1) { // điểm là -1, cần xem xét vì đâylà một ngoại lệ. row.DefaultCellStyle.BackColor = Color.Tomato; row.DefaultCellStyle.ForeColor = Color.White; _numberBlurSources++; } }