using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using WeifenLuo.WinFormsUI.Docking; namespace friction { public partial class PanelAnalysis : DockContent { MainForm m_Owner = null; string m_CurSpring = ""; public PanelAnalysis(MainForm owner) { InitializeComponent(); m_Owner = owner; Theme.Apply(this); Theme.Apply(dgvAnalysis); lbInfo25.ForeColor = Theme.Backcolor; } public void Reset() { m_CurSpring = ""; } public void UpdateData(DataHandler data) { string strSpring = data.GetCurSpring(); if (strSpring == m_CurSpring) return; dgvAnalysis.Columns.Clear(); dgvAnalysis.Rows.Clear(); dgvAnalysis.Columns.Add("chTable", "Table"); dgvAnalysis.Columns.Add("chNoTest", "No. of Tests"); dgvAnalysis.Columns.Add("chAvg", "Average RPN"); dgvAnalysis.Columns.Add("chSTD", "stdev RPN"); dgvAnalysis.Columns.Add("chForce", "Normal Force"); dgvAnalysis.Columns.Add("chTemp", "Temperature"); dgvAnalysis.Columns.Add("chHumi", "Rel. Humidity"); dgvAnalysis.Columns.Add("chVel", "Velocity"); foreach(string strTable in data.GetTableList()) { DataHandler.CalcResult result = data.GetCalc(strSpring, strTable); int iIdx = dgvAnalysis.Rows.Add(strTable, result.m_iCnt, result.m_fAvgRPN, result.m_fStdRPN, result.m_fDiffByForce, result.m_fDiffByTemp, result.m_fDiffByHumid, result.m_fDiffByVel); if(result.m_iCnt <= 5) { for (int i = 2; i <= 7; i++) { dgvAnalysis.Rows[iIdx].Cells[i].Style.BackColor = Theme.White; dgvAnalysis.Rows[iIdx].Cells[i].Style.ForeColor = Theme.Backcolor; } } else if(result.m_iCnt <= 10) { for (int i = 2; i <= 7; i++) { dgvAnalysis.Rows[iIdx].Cells[2].Style.BackColor = Theme.Gray; dgvAnalysis.Rows[iIdx].Cells[2].Style.ForeColor = Theme.Backcolor; } } else { if (result.m_fAvgRPN <= 3) dgvAnalysis.Rows[iIdx].Cells[2].Style.BackColor = Theme.Green; else if (result.m_fAvgRPN <= 5) dgvAnalysis.Rows[iIdx].Cells[2].Style.BackColor = Theme.Yellow; else dgvAnalysis.Rows[iIdx].Cells[2].Style.BackColor = Theme.Red; dgvAnalysis.Rows[iIdx].Cells[3].Style.BackColor = (result.m_fStdRPN <= 1.5) ? Theme.Green : Theme.Red; dgvAnalysis.Rows[iIdx].Cells[4].Style.BackColor = (result.m_fDiffByForce <= 1.5) ? Theme.Green : Theme.Red; dgvAnalysis.Rows[iIdx].Cells[5].Style.BackColor = (result.m_fDiffByTemp <= 1.5) ? Theme.Green : Theme.Red; dgvAnalysis.Rows[iIdx].Cells[6].Style.BackColor = (result.m_fDiffByHumid <= 1.5) ? Theme.Green : Theme.Red; dgvAnalysis.Rows[iIdx].Cells[7].Style.BackColor = (result.m_fDiffByVel <= 1.5) ? Theme.Green : Theme.Red; } } m_CurSpring = strSpring; } } }