スキップしてメイン コンテンツに移動

ListViewでinsertしたのに項目が先頭に表示されない

ListViewの先頭に項目を追加しようとして、Insertしてみたのに、最初に表示されない。今日もまたうまくいかないわけです。



今回は、リストビューでグループを作っていたのが原因だった様子。グループを作っているとInsertによる位置指定がうまく効かないみたい。気を付けましょう。


これは期待通りに表示される。

ListView lv = this.Lv履歴条件;
ListViewItem x;

lv.Items.Clear();
lv.Items.Insert(0, "1");
lv.Items.Insert(0, "2");
lv.Items.Insert(0, "3");

グループを作ってしまうと、期待通りにはならない。

var g1 = lv.Groups.Add("G1", "G1");
lv.Items.Clear();
x = lv.Items.Insert(0, "1"); x.Group = g1; x = lv.Items.Insert(0, "2"); x.Group = g1; x = lv.Items.Insert(0, "3"); x.Group = g1;

なんとも面倒なことで。

コメント

このブログの人気の投稿

SQLでは文字列の前に「N」が必要だ

SQLServerのテーブルにテキストを登録したら一部の文字が文字化けした。環境依存文字だと化けるみたい。

コンボボックスのDataSourceプロパティの使い方

コンボボックスに表示するデータを設定するのを簡単にする工夫をまとめます。コンボボックスのDataSourceプロパティを上手に使いましょう。(2017/8/30追記)