1

私は4つの列が存在するwinformにdatagridviewを持っています。そのうち1つのcomboxcolumnと他の3つのtextboxcolumnです。コンボボックスで選択されたインデックスの変更を適切に処理し、正常に動作しました。これを Datagridview_editigControlShowing() イベントで処理します。ユーザーが数値のみを入力できるように、他の3つのテキストボックスのkeypreesイベントを処理したいと思います。今、私はいくつかの解決策をネットで検索しましたが、実行時にコンボボックスをクリックしたときにeditingControlShowing()メソッドに別のハンドラーを追加すると、エラーが表示されます.しかし、テキストボックスのaddHandlerを削除すると、正常に機能しました.

私のコードは次のようになります

Private Sub dgvPurchase_EditingControlShowing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) dgvPurchase.EditingControlShowing を処理します

    Dim editComboBox As ComboBox = TryCast(e.Control, ComboBox)
    If Not editComboBox Is Nothing Then
        AddHandler editComboBox.SelectedIndexChanged, AddressOf editComboBox_SelectedIndexChanged
    End If
    'RemoveHandler dgvPurchase.EditingControlShowing, AddressOf dgvPurchase_EditingControlShowing

End Sub

これらの両方を処理する方法はありますか?解決策を教えてください

4

0 に答える 0