Beispiel #1
0
        void dgvCurrent_SelectionChanged(object sender, EventArgs e)
        {
            if (dontRunHandler)
            {
                return;
            }

            if (dgvCurrent.SelectedCells.Count == 0)
            {
                return;
            }

            var selectedInsurer = dgvCurrent.Rows[dgvCurrent.SelectedCells[0].RowIndex].Cells[0].Value.ToString();
            var insurerCategory = dgvCurrent.Rows[dgvCurrent.SelectedCells[0].RowIndex].Cells[2].Value.ToString();

            if (String.Equals(insurerCategory, "Third Party Broker", StringComparison.InvariantCultureIgnoreCase) ||
                String.Equals(insurerCategory, "Underwriting Agency", StringComparison.InvariantCultureIgnoreCase) ||
                String.Equals(insurerCategory, "Wholesale Broker", StringComparison.InvariantCultureIgnoreCase))
            {
                var enterInsurer = new EnterInsurer();
                enterInsurer.ShowDialog();
                var enteredInsurer = enterInsurer.EnteredInsurer;

                if (!String.IsNullOrEmpty(enteredInsurer))
                {
                    selectedInsurer = selectedInsurer + " / " + enteredInsurer;
                }
            }

            CurrentInsurer   = selectedInsurer;
            CurrentInsurerId = dgvCurrent.Rows[dgvCurrent.SelectedCells[0].RowIndex].Cells[1].Value.ToString();
        }
Beispiel #2
0
        private void PromptForInsurer(object sender, DataGridViewCellMouseEventArgs e)
        {
            var dgv = (DataGridView)sender;

            dgv.BeginEdit(false);
            bool   formattedValue = false;
            string category       = string.Empty;
            bool   value          = false;
            int    percentIndex   = -1;

            if (e.RowIndex < 0)
            {
                return;
            }

            foreach (DataGridViewCell cell in dgv.Rows[e.RowIndex].Cells)
            {
                switch (cell.OwningColumn.HeaderText)
                {
                case "R":
                    formattedValue = cell.FormattedValue != null && (bool)cell.EditedFormattedValue;
                    if (cell.Value != null)
                    {
                        bool.TryParse(cell.Value.ToString(), out value);
                    }
                    break;

                case "C":
                    formattedValue = cell.FormattedValue != null && (bool)cell.EditedFormattedValue;
                    if (cell.Value != null)
                    {
                        bool.TryParse(cell.Value.ToString(), out value);
                    }
                    break;

                case "Category":
                    if (cell.Value != null)
                    {
                        category = cell.Value.ToString();
                    }
                    break;

                case "%":
                    percentIndex = cell.ColumnIndex;
                    break;
                }
            }

            if (!formattedValue)
            {
                //clear out the %.
                dgv.Rows[e.RowIndex].Cells[percentIndex].Value = "";

                return;
            } //formatted value is the becomming value of the checkbox (either getting unticked or getting ticked)

// ReSharper disable ConditionIsAlwaysTrueOrFalse
            if (value == formattedValue)
            {
                return;
            }
// ReSharper restore ConditionIsAlwaysTrueOrFalse

            if (String.Equals(category, "Third Party Broker", StringComparison.InvariantCultureIgnoreCase) ||
                String.Equals(category, "Underwriting Agency", StringComparison.InvariantCultureIgnoreCase) ||
                String.Equals(category, "Wholesale Broker", StringComparison.InvariantCultureIgnoreCase))
            {
                var enterInsurer = new EnterInsurer();
                enterInsurer.ShowDialog();
                string enteredInsurer = enterInsurer.EnteredInsurer;

                if (!String.IsNullOrEmpty(enteredInsurer))
                {
                    foreach (DataGridViewCell cell in dgv.Rows[e.RowIndex].Cells)
                    {
                        switch (cell.OwningColumn.HeaderText)
                        {
                        case "Insurer":
                            cell.Value += " / " + enteredInsurer;
                            break;
                        }
                    }
                }
            }

            dgv.Rows[e.RowIndex].Cells[percentIndex].Value = "100";


            dgv.EndEdit();
        }