WPF 数据绑定跨线程更新UI测试(用串口数据更新测试)

   1.//声明绑定数据,要用ObservableCollection,不能用list,List时单向绑定,ObservableCollection时双向绑定

private ObservableCollection<string> ListString_Show { get; set; } = new ObservableCollection<string>();

2.//提前绑定号

     listBox_Hand_ReceiveComm.ItemsSource = ListString_Show;   //显示数据绑定

 

3.开始更新
            ThreadPool.QueueUserWorkItem((o) =>
            {
                this.Dispatcher.BeginInvoke(new Action(() =>
                {
                    if (ListString_Show.Count() > 25)
                    { ListString_Show.RemoveAt(0); }
                    //ObservableCollection.Clear();
                    Num_x += 1;
                    String NowTime = DateTime.Now.ToLongTimeString() + ":" + DateTime.Now.Millisecond.ToString();
                    String Show_One = NowTime + ":" + Str_ShowInfo+"------"+ Num_x.ToString();
                    ListString_Show.Add(Show_One);
                }));

4.测试发送11135个字符串,收到11132个字符串。发送间隔5毫秒。50毫秒以上无丢失。

目前项目要求已经达到,以后再测试更安全的数据收到更新显示的方法。

 

WPF  数据绑定跨线程更新UI测试(用串口数据更新测试)

WPF  数据绑定跨线程更新UI测试(用串口数据更新测试)WPF  数据绑定跨线程更新UI测试(用串口数据更新测试) 大头工程师 发布了42 篇原创文章 · 获赞 6 · 访问量 2万+ 私信 关注
上一篇:WPF listbox 实现动态滚轮下拉定位


下一篇:SpringBoot之文件读取