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 添加方法里调用
完成