M
Massimo
I'm developing an application where there's a DataGridView and one of its
columns is of DataGridViewComboBox type. The combo box behaves as it should,
but I find it's a little too unfriendly to users, because of its very
lazy-looking behaviour.
I, as an user of the application, would like to click on the combo box, have
its pull-down menu... well, pull down , select one item and watch the
application reacting to my input.
What actually happens is the following:
- I click on the combo box, but nothing happens if the grid wasn't already
the active control: this first click only moves the focus to it and/or
selects the row (I'm using the FullRowSelect selection mode here).
- If I click again on the combo box, or if the grid already had the focus,
no pull-down menu appears anyway, because this click only activates the cell
in the grid, without doing anything else.
- I then click *again*, quite disappointed, and now the control realizes
that someone is really yelling at it, so finally it wakes up and the menu
appears.
- I select an item, the menu disappears, but my event processing, which is
linked to the CellValueChanged event of the grid, doesn't start yet. I
suppose this is because at this point the cell is still in editing mode, so
its value actually didn't change.
- I then click anywhere on the grid, and now, at last, the cell becomes
inactive, its value changes, the event triggers and the application starts
doing its job.
I find this behaviour really annoying, and would like a way to make my
application's look&feel better.
In order to solve the last problem, I think I can link my processing to some
other event... but which one?
I really don't have any clue about removing the need for the first two
clicks, though :-(
Any help would be really appreciated.
Thanks
Massimo
columns is of DataGridViewComboBox type. The combo box behaves as it should,
but I find it's a little too unfriendly to users, because of its very
lazy-looking behaviour.
I, as an user of the application, would like to click on the combo box, have
its pull-down menu... well, pull down , select one item and watch the
application reacting to my input.
What actually happens is the following:
- I click on the combo box, but nothing happens if the grid wasn't already
the active control: this first click only moves the focus to it and/or
selects the row (I'm using the FullRowSelect selection mode here).
- If I click again on the combo box, or if the grid already had the focus,
no pull-down menu appears anyway, because this click only activates the cell
in the grid, without doing anything else.
- I then click *again*, quite disappointed, and now the control realizes
that someone is really yelling at it, so finally it wakes up and the menu
appears.
- I select an item, the menu disappears, but my event processing, which is
linked to the CellValueChanged event of the grid, doesn't start yet. I
suppose this is because at this point the cell is still in editing mode, so
its value actually didn't change.
- I then click anywhere on the grid, and now, at last, the cell becomes
inactive, its value changes, the event triggers and the application starts
doing its job.
I find this behaviour really annoying, and would like a way to make my
application's look&feel better.
In order to solve the last problem, I think I can link my processing to some
other event... but which one?
I really don't have any clue about removing the need for the first two
clicks, though :-(
Any help would be really appreciated.
Thanks
Massimo