回答編集履歴

3

微修正

2024/03/05 01:34

投稿

fana
fana

スコア11675

test CHANGED
@@ -4,7 +4,7 @@
4
4
  これって,「コレをどこかで true にした直後の1回目の `RowPostPaint` 時にしか効かない」という話になると思いますが,果たしてそれで良いのでしょうか?
5
5
 
6
6
  `RowPostPaint` は行毎に呼ばれる物であろうと思うので,
7
- たまたま「直後の1回」となったある行のための `RowPostPaint` でのみ `DrawLine` での描画を実施した後,以降の他の行の描画がその一部または全部を上書きしてしまい得るように思うのですが.
7
+ たまたま「直後の1回」となったある行のための `RowPostPaint` でのみ `DrawLine` での描画を実施した後,以降の他の行の描画がその一部または全部を上書きしてしまい得るように思うのですが.
8
8
 
9
9
  ---
10
10
 

2

追記

2024/03/05 01:33

投稿

fana
fana

スコア11675

test CHANGED
@@ -5,3 +5,9 @@
5
5
 
6
6
  `RowPostPaint` は行毎に呼ばれる物であろうと思うので,
7
7
  たまたま「直後の1回」目となったある行のための `RowPostPaint` でのみ `DrawLine` での描画を実施した後,以降の他の行の描画がその一部または全部を上書きしてしまい得るように思うのですが.
8
+
9
+ ---
10
+
11
+ 要は,
12
+ 「DataGridView の各部位が いつ/どんな順序で 描画されるのかはわからない → ならば, いつ/どんな順序で 描画されようが大丈夫な形の実装をする必要がある」という話になるのではないかと.
13
+ (再描画なんて様々な要因で発生し得るハズ.そんなタイミングでフラグ操作みたいなことをするべきではない)

1

1文字追加

2024/03/05 01:28

投稿

fana
fana

スコア11675

test CHANGED
@@ -1,7 +1,7 @@
1
1
  > `if (cellclicker)//cellclickerはどこかのセルがクリックしたときにtrueになります。`
2
2
 
3
3
  この `cellclicker` を描画処理内で `false` にしている,というのがまず変だと見えます.
4
- これって,「コレをどこかで true にした直後の1回の `RowPostPaint` 時にしか効かない」という話になると思いますが,果たしてそれで良いのでしょうか?
4
+ これって,「コレをどこかで true にした直後の1回の `RowPostPaint` 時にしか効かない」という話になると思いますが,果たしてそれで良いのでしょうか?
5
5
 
6
6
  `RowPostPaint` は行毎に呼ばれる物であろうと思うので,
7
7
  たまたま「直後の1回」目となったある行のための `RowPostPaint` でのみ `DrawLine` での描画を実施した後,以降の他の行の描画がその一部または全部を上書きしてしまい得るように思うのですが.