Laden...

DataGridView - ComboBox öffnen ohne Row zu selecten

Erstellt von inTrance vor 18 Jahren Letzter Beitrag vor 17 Jahren 1.898 Views
inTrance Themenstarter:in
170 Beiträge seit 2005
vor 18 Jahren
DataGridView - ComboBox öffnen ohne Row zu selecten

Hallo!

Ich nutze ein DataGridView, um dem Nutzer Daten anzeigen zu lassen und
editieren zu lassen, die nicht an eine Datenbank angebunden sind. Dazu hat
eien Spalte auch ComboBoxen. Die ComboBoxen sind aber sehr unpraktisch
zu handeln im DataGridView, denn bevor man eine ComboBox "öffnen" kann,
muss man zunächst die Zelle markieren. Im Handling sehr, sehr unpraktisch,
da ein Doppelklick nicht funktioniert.

Meine Lieblingslösung wäre, dass die Zellen überhaupt nicht markiert werden
können (ich brauchs eh nicht) und man so dann die Boxen mit einem Klick
öffnen kann. Kann man das irgendwie hinbekommen?

Oder bietet sich dafür ein anderes Control an? Es müssten aber mehrere Spalten
und Zeilen angezeigt werden können mit Links, Text, Combos und Images...

Grüße,

inTrance

inTrance Themenstarter:in
170 Beiträge seit 2005
vor 18 Jahren

Ok, habs hinbekommen. Keine Ahnung, ob das nicht irgendwelche Seiteneffekte
hat, aber es scheint zu funktionieren:

        private void grid_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == welcheAuchImmer && e.RowIndex >= 0)
            {
                if (grid.Rows[e.RowIndex].Cells[e.ColumnIndex] is DataGridViewComboBoxCell)
                {
                    grid.BeginEdit(true);
                    if (grid.EditingControl is ComboBox)
                    {
                        ComboBox comboBox = (ComboBox)grid.EditingControl;
                        comboBox.DroppedDown = true;
                    }
                }
            }
        }
M
121 Beiträge seit 2006
vor 17 Jahren
Re

Cool sowas hab ich gesucht!!!

Danke

Gruß

Maruu