datagridview cellValidating

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von _PASCAL_.

    datagridview cellValidating

    guten morgen,

    ich weis nicht was ich falsch mache aber meine ComboBoxCell in einem datagridview verhält sich komisch.

    den ComboboxCells habe ich werte vorgegeben ... jetzt möchte ich aber dass man auch andere Werte eingeben kann.

    das problem dabei ist dass beim ersten mal "schreiben" eines neuen wertes dieser nicht als .value angenommen wird ... er erscheint dann nur in der dropdown liste ... erst beim zweiten mal wird er übernommen.

    VB.NET-Quellcode

    1. Private Sub DataGridView1_CellValidating(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellValidatingEventArgs) Handles dgview1.CellValidating
    2. If (e.ColumnIndex = dgview1.Columns(0).DisplayIndex) Then
    3. Dim comboBoxCell As DataGridViewComboBoxCell = CType(dgview1.Rows(e.RowIndex).Cells(e.ColumnIndex), DataGridViewComboBoxCell)
    4. If (Not comboBoxCell.Items.Contains(e.FormattedValue)) And e.FormattedValue <> "" Then
    5. comboBoxCell.Items.Add(e.FormattedValue)
    6. comboBoxCell.Value = e.FormattedValue
    7. End If
    8. End Sub


    dabei steht doch bei mir direkt nach dem adden

    VB.NET-Quellcode

    1. comboBoxCell.Value = e.FormattedValue


    warum geht das dann nicht ?
    Wozu nutzt Du denn überhaupt das Validating?
    Bei Dir sollte es doch mit Item ordentlich laufen.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Nein eben nicht ...

    Das Problem ist das ich den DataGridViewComboBoxColums jeweils eine Auswahl vorgebe ... ich aber trotzdem noch selbst werte hinzufügen möchte ...

    wenn ich das mit dem Validating nicht mache kommt jedesmal ein fehler der besagt dass es nicht iO sei es dort einzutragen ... also nicht valid ^^

    deshalb füge ich beim Validating den neuen eintrag ein ...

    es hat sich übrigends geklärt ... es gibt ein even Validated ... wenn ich dort den Value setzte passt das ganze