ListViewで行削除後の設定について


きくのや  2006-04-07 22:07:47  No: 94964

vb.net2003で作業をしています。
ListViewで行を追加する際、追加した行に対して背景色を↓の様に
設定しています。
lstItem.BackColor = System.Drawing.Color.PaleGreen  (変数lstItemはListViewItem )
lstSysset.Items.Add(lstItem)  ここで行追加

追加されるリスト行に背景色は設定されるのですが

行1:  値
行2:  値(追加して背景色が設定されている行)

ここで行1を削除(RemoveAt)すると
行2に設定した設定した背景色で表示されません。
再度この行2をクリックすると設定した背景色で表示されます。

試したことは
①BeginUpdate()  EndUpdate()で処理を行う
②削除した後に行2をSelected=Trueしてみる
③処理後、リストビューを  Update()する
④処理後、リストビューを  Selecte()する
をしてみましたが現象は改善されません。

どなたか、解決方法をご存知でしたら教えてください。


特攻隊長まるるう  2006-04-14 19:47:40  No: 94965

詳しく書いてくれてるのは分かるけど、どの現象を言っているのか?
リストビューのもともとの仕様に文句を言っているのか?それとも
なにかマズいコードを書いて不具合が起きてるのか?バグに近い
動きになってるのか?…よく分かんないデス。

リストビューには幾つかのスタイルがあるし、設定によって動きも
変わります。
新規プロジェクトにデフォルトで貼り付けた ListView1 に対して
必要なプロパティの変更は全てコードで書き、行の追加も3行
ほどでいいのでコードで書き、どのような操作をして(リストの2行目を
選択状態にして削除ボタン(Button1)クリックとか…)どのような
削除のコードを書いていて、実行するとどの行が何色になって
期待した動作と違うのか?

そのままコピペすれば現象が再現できる最小限のコードの提示と
説明をお願いします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加