1

重複の可能性:
リストボックスのスクロールバーの位置を設定する

WPFリストボックスのスクロールバーの位置を最後に追加されたアイテムに設定するにはどうすればよいですか?

4

3 に答える 3

4

ScrollIntoViewメソッドを使用するだけで済みます。

object item = ...
listBox.Items.Add(item);
listBox.ScrollIntoView(item);
于 2013-01-14T12:08:53.097 に答える
1

WPFでは、を使用する必要がありますScrollIntoView。この例を追加しました:

int i = 0;
private void button1_Click(object sender, RoutedEventArgs e)
{   
   listBox1.Items.Add("Item nr. " + i.ToString());
   listBox1.ScrollIntoView("Item nr. " + i.ToString());
   i++;
}

Windowsフォームでは、次のようになります。

int visibleItems = myListBox.ClientSize.Height / myListBox.ItemHeight;
myListBox.TopIndex = Math.Max(myListBox.Items.Count - visibleItems + 1, 0);
于 2013-01-14T12:10:21.510 に答える
0

この投稿で説明されているアイデアを使用して、MVVMに合わせた方法でそれを行うことができます-TreeViewItemの代わりにListViewItemにマップするだけです(IsSelectedがトリガーになる代わりに、追加される新しいアイテムに設定できます)。

于 2013-01-14T12:17:58.677 に答える