예제 #1
0
        private void dgvValuesList_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
        {
            DataGridView dgv = (DataGridView)sender;

            if (e.RowIndex < dgv.Rows.Count - 1)
            {   // don't look at last row
                string dgvValue = string.Empty;

                if (e.ColumnIndex == 0)
                {
                    dgvValue = (dgv[1, e.RowIndex].Value != null) ? dgv[1, e.RowIndex].Value.ToString() : string.Empty;
                }
                else
                {
                    dgvValue = e.FormattedValue.ToString();
                }

                if (dgvValue == string.Empty)
                {
                    dgvValuesList.Rows[e.RowIndex].ErrorText = "Value cannot be empty";
                    e.Cancel = true;
                }
                else if (dgvValue.Contains(";"))
                {
                    dgvValuesList.Rows[e.RowIndex].ErrorText = "Value cannot contain ';'";
                    e.Cancel = true;
                }
                else
                {
                    dgvHandler.SetRowIcon(e.RowIndex, dgvValue);
                    dgvHandler.SetCellToolTip(e.RowIndex, dgvValue);
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Handles Control Click Events.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param>
        private void BtnClick(object sender, EventArgs e)
        {
            ICommand currentCommand = null;

            if (sender.Equals(btnCancel))
            {
                this.Close();
            }
            else if (sender.Equals(btnUndo))
            {
                commandsList.Undo();
            }
            else if (sender.Equals(btnRedo))
            {
                commandsList.Redo();
            }
            else if (sender.Equals(btnSave))
            {
                SaveEnvironmentVariable();
            }
            else if (sender.Equals(btnExport))
            {
                ExportEnvironmentVariable();
            }
            else if (sender.Equals(btnImport))
            {
                ImportEnvironmentVariable();
            }
            else if (sender.Equals(tsmiLocate))
            {
                LocateInWindowsExplorer();
            }
            else if (sender.Equals(tsmiCut))
            {
                var index = dgvValuesList.SelectedRows[0].Index;
                if (index != -1)
                {
                    if (dgvValuesList[1, index].Value != null)
                    {
                        Clipboard.SetText(dgvValuesList[1, index].Value.ToString());
                        dgvValuesList.Rows.RemoveAt(index);
                    }
                }
            }
            else if (sender.Equals(tsmiCopy))
            {
                var index = dgvValuesList.SelectedRows[0].Index;
                if (index != -1)
                {
                    if (dgvValuesList[1, index].Value != null)
                    {
                        Clipboard.SetText(dgvValuesList[1, index].Value.ToString());
                    }
                }
            }
            else if (sender.Equals(tsmiPaste))
            {
                var index = dgvValuesList.SelectedRows[0].Index;
                if (index != -1)
                {
                    string dgvValue = Clipboard.GetText();
                    string cmdValue = dgvValuesList[1, index].Value as string;
                    if (cmdValue == null)
                    {
                        dgvValuesList[0, dgvValuesList.Rows.Add()].Value = Properties.Resources.ValTypeNull;
                    }
                    if (dgvValue != null && (cmdValue == null || cmdValue != dgvValue))
                    {
                        dgvValuesList[1, index].Value = dgvValue;
                        dgvHandler.SetRowIcon(index, dgvValue as string);
                        dgvHandler.SetCellToolTip(index, dgvValue as string);
                    }
                    else
                    {
                        if (cmdValue != null)
                        {
                            dgvValuesList[1, index].Value = cmdValue;
                        }
                        SetBtnState();
                    }
                }
            }
            else if (sender.Equals(btnDelete))
            {
                dgvValuesList_UserDeletingRow(null, null);
            }
            else if (sender.Equals(btnDelDupes))
            {
                dgvValuesList_UserDeletingDupedRows();
            }
            else if (sender.Equals(btnSortValues))
            {
                dgvValuesList_UserSortRows();
            }
            else if (sender.Equals(btnBrowse))
            {
                BrowseFolder();
            }
            #region Move Row
            else if (sender.Equals(btnMoveUp))
            {
                currentCommand = new DgvMoveUpCommand(dgvHandler);
            }
            else if (sender.Equals(btnMoveTop))
            {
                currentCommand = new DgvMoveToTopCommand(dgvHandler);
            }
            else if (sender.Equals(btnMoveDown))
            {
                currentCommand = new DgvMoveDownCommand(dgvHandler);
            }
            else if (sender.Equals(btnMoveBottom))
            {
                currentCommand = new DgvMoveToBottomCommand(dgvHandler);
            }
            #endregion Move Row

            if (!sender.Equals(btnCancel))
            {
                AddCommand(currentCommand);
            }
        }