今 Win アプリなお仕事してるんですが、Web 版とそろえるために DataGridView の最初の二列にリンクをくっつけてます。
"削除"リンクと"編集"リンクがあって"編集"リンクをクリックすると列を編集可能状態にして、"更新"リンクと"キャンセル"リンクにする ASP.NET ではよくあるやつです。
んでセルの値は複合キーの DB 存在チェックとかじゃないような、単純なチェック(未入力とかフォーマットとか)は CellValidating でやろうと思ったんですが問題が多々。
セルの値を不正な値のままにして"キャンセル"リンク押しても CellValidating が走る。
API みたけど CausesValidation ないんですね
CellContentClick は CellValidating の後に発生するので意味なし。
DataGridView.CurrentCell も編集中のセルのままなのでリンククリックが判別できず。
あと、DataGridView 外の Button は CausesValidation 関係なく、CellValidating は走らない。
なんか方法あるんでしょうか?
とりあえずおとなしく、更新リンククリック時に全部チェックするようにします