private void m_PopulateDgv(ToolStripButton v_tsb) { v_dgv.SelectionChanged -= m_Dgv_SelectionChanged; // name column headers if (v_tsb == v_btnLeader) { v_tab = v_Tab.v_Leader; v_dgv.DataSource = v_LeaderList; v_colPadding = new[] { 10, 5, 5, 0 }; v_btnToggleHighlightFixedFields.Enabled = true; v_btnToggleHighlightMediaFields.Enabled = false; m_IndicateFixedFields(); } else if (v_tsb == v_btnDirectory) { v_tab = v_Tab.v_Directory; v_dgv.DataSource = v_DirectoryList; v_colPadding = new[] { 10, 5, 5, 0 }; v_btnToggleHighlightFixedFields.Enabled = false; v_btnToggleHighlightMediaFields.Enabled = false; } else if (v_tsb == v_btnControl) { v_tab = v_Tab.v_Control; v_dgv.DataSource = v_ControlList; v_colPadding = new[] { -35, 5, 5, 0 }; v_btnToggleHighlightFixedFields.Enabled = true; v_btnToggleHighlightMediaFields.Enabled = true; m_IndicateFixedFields(); m_IndicateMediaFields(); } else if (v_tsb == v_btnVardata) { v_tab = v_Tab.v_Vardata; v_dgv.DataSource = v_VardataList; v_colPadding = new[] { -15, -20, -20, 0 }; v_btnToggleHighlightFixedFields.Enabled = false; v_btnToggleHighlightMediaFields.Enabled = false; v_dgv.Columns["v_Value"].DefaultCellStyle.WrapMode = DataGridViewTriState.True; } else { throw new Exception("Unknown tab selection"); } // set column defaults: foreach (DataGridViewColumn v_col in v_dgv.Columns) { v_col.SortMode = DataGridViewColumnSortMode.NotSortable; } // row stuff for (var v_i = 0; v_i < v_dgv.Rows.Count; v_i++) { // set row height: v_dgv.Rows[v_i].MinimumHeight = 30; } // tooltip for blank symbol: m_IndicateBlankSymbol(); // handle column widths and horiz scrollbar: m_Dgv_Resize(null, null); // set selected tab backcolor: v_btnLeader.ForeColor = Color.FromArgb(220, 220, 220); v_btnDirectory.ForeColor = Color.FromArgb(220, 220, 220); v_btnControl.ForeColor = Color.FromArgb(220, 220, 220); v_btnVardata.ForeColor = Color.FromArgb(220, 220, 220); v_tsb.ForeColor = v_tabHighlightColor; v_dgv.ClearSelection(); v_dgv.SelectionChanged += m_Dgv_SelectionChanged; }
private int m_DisplayMrcData_(string v_mrcOpenFilePath) { // clear any existing row data: v_PropertyList.Clear(); v_LeaderList.Clear(); v_DirectoryList.Clear(); v_ControlList.Clear(); v_VardataList.Clear(); v_dgv.Rows.Clear(); // call engine to generate dat file from the mrc file: var lib = new viewmarc_lib.c_Engine(); var v_exitCode = lib.RunMrcToDat(v_mrcOpenFilePath, out string[] v_lines); if (v_exitCode != 0) { return(v_exitCode); } foreach (var v_line in v_lines) { if (v_line.StartsWith("PRP")) { v_PropertyList.Add(new c_PropertyItem(v_line.Substring(4).Split('\u23F5'))); } if (v_line.StartsWith("LDR")) { v_LeaderList.Add(new c_LeaderItem(v_line.Substring(4).Split('\u23F5'))); } if (v_line.StartsWith("DIR")) { v_DirectoryList.Add(new c_DirectoryItem(v_line.Substring(4).Split('\u23F5'))); } if (v_line.StartsWith("CTR")) { v_ControlList.Add(new c_ControlItem(v_line.Substring(4).Split('\u23F5'))); } if (v_line.StartsWith("VAR")) { v_VardataList.Add(new c_VardataItem(v_line.Substring(4).Split('\u23F5'))); } } // populate datagridview with default view: v_btnLeader.Enabled = true; v_btnDirectory.Enabled = true; v_btnControl.Enabled = true; v_btnVardata.Enabled = true; if (v_tab == v_Tab.v_NotSet) { v_tab = v_Tab.v_Vardata; } if (v_tab == v_Tab.v_Leader) { v_btnLeader.PerformClick(); } if (v_tab == v_Tab.v_Directory) { v_btnDirectory.PerformClick(); } if (v_tab == v_Tab.v_Control) { v_btnControl.PerformClick(); } if (v_tab == v_Tab.v_Vardata) { v_btnVardata.PerformClick(); } // update form title: m_SetTitle(v_mrcOpenFilePath); return(0); }