ListviewのTile表示で一番前に行が追加できない
追加になったものを一番上に表示させたいのですが、常に最後に追加されてしまうのです。
自宅だけかなと、サンプルを作ってみた
ソートさせないようにと、SortはNone、AutoArrangeはFalseでやってました。
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { int counter = 0; public Form1() { InitializeComponent(); } private void timer1_Tick(object sender, EventArgs e) { counter++; ListViewItem li= listView1.Items.Insert(0, DateTime.Now.ToString()); li.SubItems.Add("test1 " + counter.ToString()); li.SubItems.Add("test2 " + counter.ToString()); li.SubItems.Add("test3 " + counter.ToString()); } } }
なにやっても同じ動きListや、Detailにすればちゃんと先頭に追加される・・・
なにこれ!
もしやと
SortはDescending、AutoArrangeはTrueにすると・・・できるし。
あ、でも、表示が最終行にw
追加してあげた後に、これをいれて解決
listView1.EnsureVisible(0);
うぐ。納得いかないけど自己解決w
19:46 追記 帰ってきて本体に実装したらだめだったw ご存知のかたいらっしゃったらおしえていただけないでしょうかー><
いろいろ探したんだけどないんですよねぇ