- PR -

DataGridViewの制御について

1
投稿者投稿内容
七瀬
会議室デビュー日: 2006/12/21
投稿数: 7
投稿日時: 2006-12-29 20:15
VB2005です。
DataGridViewのセルに値を入力し、値を評価しています。
値の評価はCellEndEditイベント(値を入力後リターンキー押下)内で行っています。
範囲外の値の場合、値は残したまま、そのセルをカレントにしたいのですが、CurrentCellプロパティを指定しても下の行に移動してしまいます。
選択モードははFullRowSelectです。
どうすれば下の行への移動を止めて、そのセルを編集モードにすることが出来るでしょうか。

minminnana
大ベテラン
会議室デビュー日: 2004/02/05
投稿数: 246
お住まい・勤務地: 盛岡
投稿日時: 2006-12-30 17:34
CellValidatingイベントで評価すれば良いのでは?
七瀬
会議室デビュー日: 2006/12/21
投稿数: 7
投稿日時: 2007-01-03 12:01
minminnanaさん、恐縮ですが質問です。

CellValidatingイベントを調べましたが、どうもしっくり来ません。

私が行いたいことは、
---------------------------------------------------
使用者がセル(2,2)を編集モードにし"2005/55/88"と入力しリターンキーを押下する。
編集モードは終了し、カレントセルは下の行に移動する。

この流れを、
入力された値は日付として正しくないので、カレントセルを(2,2)に戻す。
入力値"2005/55/88"を修正させる為に、値は残したまま編集モードにする。
MsgBoxで値が正しくない旨を知らせる。
---------------------------------------------------
といった具合です。
これがCellValidatingイベントで可能でしょうか?

じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-01-03 12:42
引用:

七瀬さんの書き込み (2007-01-03 12:01) より:

これがCellValidatingイベントで可能でしょうか?


可能だから示されています。

引用:

CellValidatingイベントを調べましたが、どうもしっくり来ません。


と仰ってますが、「イベント引数」 について調べていらっしゃらないのでしょう。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
minminnana
大ベテラン
会議室デビュー日: 2004/02/05
投稿数: 246
お住まい・勤務地: 盛岡
投稿日時: 2007-01-04 12:59
さしあたって、エラー時に他のセルに遷移させないサンプルはCellValidatingイベントのヘルプに載っていますよね。

また、入力された値を選択状態にしたかったりもするんですかね。
http://www.atmarkit.co.jp/fdotnet/dotnettips/538dgvedit/dgvedit.html
ただ、私が試した限りではCellValidatingイベント内では単純にBeginEditメソッドを呼び出しただけでは駄目なようでした。(一旦EndEditすれば選択状態には出来るのですがそれではいまひとつですしね・・・・)

すいませんが、私が提供できる情報はこの位です。
1

スキルアップ/キャリアアップ(JOB@IT)