Beispiel #1
0
 private void AddComparisonColumn(string name)
 {
     var column = new DataGridViewTextBoxColumn();
     column.Name = name;
     column.Width = Math.Max(100, column.GetPreferredWidth(DataGridViewAutoSizeColumnMode.ColumnHeader, true));
     column.AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
     column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
     column.SortMode = DataGridViewColumnSortMode.NotSortable;
     var rightClickMenu = new ContextMenuStrip();
     var renameItem = new ToolStripMenuItem("Rename");
     renameItem.Click += (s, e) =>
     {
         RenameComparison(column);
     };
     var removeItem = new ToolStripMenuItem("Remove");
     removeItem.Click += (s, e) =>
     {
         RemoveComparison(column);
     };
     rightClickMenu.Items.Add(renameItem);
     rightClickMenu.Items.Add(removeItem);
     column.HeaderCell.ContextMenuStrip = rightClickMenu;
     runGrid.Columns.Add(column);
     RaiseRunEdited();
 }
Beispiel #2
0
 private void RenameComparison(DataGridViewTextBoxColumn column)
 {
     var name = column.Name;
     var newName = name;
     var dialogResult = InputBox.Show("Rename Comparison", "Comparison Name:", ref newName);
     if (dialogResult == DialogResult.OK)
     {
         if (!Run.Comparisons.Contains(newName))
         {
             if (!newName.StartsWith("[Race]"))
             {
                 column.Name = newName;
                 column.Width = Math.Max(100, column.GetPreferredWidth(DataGridViewAutoSizeColumnMode.ColumnHeader, true));
                 if (CurrentState.CurrentComparison == name)
                     CurrentState.CurrentComparison = newName;
                 Run.CustomComparisons[Run.CustomComparisons.IndexOf(name)] = newName;
                 foreach (var segment in Run)
                 {
                     segment.Comparisons[newName] = segment.Comparisons[name];
                     segment.Comparisons.Remove(name);
                 }
                 var args = new RenameEventArgs();
                 args.OldName = name;
                 args.NewName = newName;
                 ComparisonRenamed(this, args);
             }
             else
             {
                 var result = MessageBox.Show(this, "A Comparison name cannot start with [Race].", "Invalid Comparison Name", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
                 if (result == DialogResult.Retry)
                     RenameComparison(column);
             }
         }
         else if (newName != name)
         {
             var result = MessageBox.Show(this, "A Comparison with this name already exists.", "Comparison Already Exists", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
             if (result == DialogResult.Retry)
                 RenameComparison(column);
         }
     }
     RaiseRunEdited();
 }
Beispiel #3
0
 private void InitializeDataGridView(DataGridView gridView)
 {
     gridView.Columns.Clear();
     gridView.AutoGenerateColumns = false;
     gridView.AllowUserToResizeColumns = true;
     Font gridFont = new Font(gridView.Parent.Font.FontFamily, (float)(gridView.Parent.Font.SizeInPoints * .75D));
     gridView.Font = gridFont;
     for (int loop = 0; loop < (int)gridColumnSavedWidth.EndLoop; loop++)
     {
         DataGridViewTextBoxColumn newColumn = new DataGridViewTextBoxColumn();
         switch (loop)
         {
             case ((int)gridColumnSavedWidth.FilePath):
                 newColumn.DataPropertyName = "FilePath";
                 newColumn.HeaderText = "Path";
                 break;
             case ((int)gridColumnSavedWidth.Name):
                 newColumn.DataPropertyName = "Name";
                 newColumn.HeaderText = "Filename";
                 break;
             case ((int)gridColumnSavedWidth.Length):
                 newColumn.DataPropertyName = "Length";
                 newColumn.HeaderText = "Length";
                 newColumn.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
                 break;
             case ((int)gridColumnSavedWidth.LastModified):
                 newColumn.DataPropertyName = "LastModified";
                 newColumn.HeaderText = "Last Modified";
                 break;
             case ((int)gridColumnSavedWidth.FileHash):
                 newColumn.DataPropertyName = "FileHash";
                 newColumn.HeaderText = "Hash Value";
                 break;
             default:
                 newColumn = null;
                 break;
         }
         if (newColumn != null)
         {
             newColumn.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
             newColumn.HeaderCell.Style.WrapMode = DataGridViewTriState.False;
             newColumn.Resizable = DataGridViewTriState.True;
             newColumn.SortMode = DataGridViewColumnSortMode.Automatic;
             gridView.Columns.Add(newColumn);
             // Can't change the size until it's added to the grid because
             // we can't compute the preferred width until it's in the grid
             if ((int)Properties.Settings.Default[propertySuffix + newColumn.DataPropertyName] > 0) newColumn.Width = (int)Properties.Settings.Default[propertySuffix + newColumn.DataPropertyName];
             else newColumn.Width = newColumn.GetPreferredWidth(DataGridViewAutoSizeColumnMode.ColumnHeader, true);
         }
     }
 }