WPF listbox 实现动态滚轮下拉定位

 private ObservableCollection<keymodel> _listlua;

public ObservableCollection<keymodel> listlua
{
get { return _listlua; }
set { _listlua = value;RaisePropertyChanged(); }
}    

  首先定义一个ObservableCollection集合用来存贮数据 

public delegate void ScrollToEnd();
 public ScrollToEnd FocusLastItem = null;

  在定义一个委托事件

<ListBox x:Name="StatusList" ItemsSource="{Binding listlua}" />

  前端代码  

     public MainWindow()
        {
            InitializeComponent();
             this.DataContext = new MainViewModel1();
            MainViewModel1 vm = (MainViewModel1)this.DataContext;
            vm.FocusLastItem += AutoScroll;

        }

  

 private void AutoScroll()
        {
            StatusList.ScrollIntoView(StatusList.Items[StatusList.Items.Count - 1]);
        }

  前端CS 代码
然后在ViewMmodel 添加方法里调用

 

 完成

posted @ 2019-12-14 15:46  可乐_加冰  阅读(986)  评论(0编辑  收藏  举报