現在DataGridViewのチェックボックスの状態で難儀しております。
DataGridViewのチェックボックス操作に、
CurrentCellDirtyStateChangedで未コミット分の判定を行い、
コミットしてからCellValueChangedで値をとる一般的な手法を用いております。
チェックボックスを単純にTrue/Falseして入力制御したりする分にはこれで問題ないです。
しかしながら、Falseした際に、他の入力セルが変更されていた場合に、
「変更内容が消えるがよろしいか?」といった内容のダイアログを出し、
場合によってはチェックボックスの値を元に戻すということを実現したいと思います。
そこでダイアログで「いいえ」を選択された場合に、
チェックボックスのValueをTrueに戻し、
発生したイベントは別に持たせたフラグでスルーするようにしましたが、
Valueは確かにTrueなのですが、表示上がFalseのままであり、
タブ移動して初めて表示上が変わる状態になってしまっています。
そこでグリッドの表面上のリフレッシュ等が必要かと思いましたが、
方法が思い浮かばず途方に暮れています。
どなたか知恵をお貸しください。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
Update()でもダメだとすると…無理かな……。
DataGridView.InvalidateでDataGridView全体を再描画かけてみる…とかでしょうか……。
No.1
- 回答日時:
>そこでグリッドの表面上のリフレッシュ等が必要かと思いましたが、
>方法が思い浮かばず途方に暮れています。
DataGridView.InvalidateCell メソッドで無効化して、
Control.Update メソッド(DataGridView.Update メソッド)で描画させる。
というのはどうなんでしょうか?
# Updateはもしかしたら不要かも知れませんが…。
http://msdn.microsoft.com/ja-jp/library/system.w …
http://msdn.microsoft.com/ja-jp/library/system.w …
# .NET Framework 2.0なページですが…3.5や4.0でも同様でしょう。
この回答への補足
だめです。以下のメソッドは試しましたが効果ありません。
・InvalidateCell
・Update
・UpdateCell
表示が変わることはないです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルVBAでチェックボックスにチェックを入れる 1 2022/09/14 00:52
- Visual Basic(VBA) マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」 4 2022/11/08 11:14
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
- Excel(エクセル) 表内で、Enterキーで横→行の最後入力したら次の行の先頭に移動するマクロを作りたい 3 2022/05/01 21:19
- Visual Basic(VBA) Excel VBAの解読について質問があります。 概要は、マクロでチェックボックスにチェックすると日 1 2023/02/10 07:50
- Excel(エクセル) たくさんあるフォームコントロールを効率よく確認するには 1 2022/12/24 12:27
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Excel(エクセル) スプレッドシートのチェックボックスとフィルタを連携させたい 2 2022/09/26 18:02
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAで、条件に一致する...
-
コマンドプロンプト実行後に画...
-
JSPで<SELECT>の中にDBから持っ...
-
VB.netで、シリアル通信のタイ...
-
boolean型のフィールドとゲッタ...
-
mainメソッドのthrows節で設定...
-
Excel VBA でExcelを終了したい...
-
onClickで関数呼出し後に、結果...
-
エクセルVBAにおけるON TIMEメ...
-
配列のメソッド
-
Refreshメソッドの使い方
-
DataGridViewでセルクリックイ...
-
シンボルを解決できません。 ...
-
ListViewにて行追加
-
AdapterView<?> parent この部...
-
worksheets & rows メソッドは...
-
サーブレット DBにある生年月...
-
ポストバック時のDatasourceバ...
-
ASP.NET MVCのホームページ表...
-
ダブルコロンの役割
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBAで、条件に一致する...
-
Labelコントロールに数字を代入...
-
final修飾子を使っているのに、...
-
エクセルVBAにおけるON TIMEメ...
-
コマンドプロンプト実行後に画...
-
mainメソッドのthrows節で設定...
-
DataGridViewでセルクリックイ...
-
javascriptからjavaを呼び出したい
-
VBPをダブルクリックするとたま...
-
onClickで関数呼出し後に、結果...
-
ExcelのxlDialogInsertPictureで。
-
Refreshメソッドの使い方
-
JSPで<SELECT>の中にDBから持っ...
-
【sendkeysメソッドが動かずに...
-
ウィンドウを最前面にできません
-
(String args[])というメッソ...
-
C# 演算 最大値 最小値 表現の仕方
-
Excel VBA シェイプの原型のサ...
-
VB.netで、シリアル通信のタイ...
-
boolean型のフィールドとゲッタ...
おすすめ情報