Wie richte ich eine DataGridView ComboBoxColumn mit einer anderen DataSource in jeder Zelle ein?

Ich richte einDataGridViewComboBoxColumn so was:

var newColumn = new DataGridViewComboBoxColumn() {
    Name = "abc"
};
newColumn.DataSource = new string[] { "a", "b", "c" }; 
dgv.Columns.Add(newColumn);

Das funktioniert: Jede Zeile hat ein Dropdown-Feld in dieser Spalte, das mit a, b, c gefüllt ist.

Jetzt möchte ich jedoch die Liste für bestimmte Zeilen kürzen. Ich versuche, die Liste pro Zeile wie folgt einzustellen:

foreach (DataGridViewRow row in dgv.Rows) {
    var cell = (DataGridViewComboBoxCell)(row.Cells["abc"]);        
    cell.DataSource = new string[] { "a", "c" };                        
}

Dieser Code hat jedoch keine Auswirkung - in jeder Zeile wird weiterhin "a", "b", "c" angezeigt.

Ich habe versucht zu ersetzennew string[] mitnew List<string> undnew BindingList<string>, beide ohne Erfolg.

Ich habe auch versucht, den Code zu entfernen, der einstelltnewColumn.DataSource, aber dann sind die Listen leer.

Wie soll ich das richtig machen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage